kann nicht an svn übergeben werden, da die Arbeitskopie immer veraltet ist

8

Ich versuche, etwas Arbeit zu verrichten, aber svn schlägt immer fehl und sagt mir, dass eine Datei, die ich modifiziert habe, nicht mehr aktuell ist. Ich habe versucht, zuerst zu aktualisieren, das funktioniert nicht. Bereinigung funktioniert nicht. Wenn ich die Datei zurücksetze, kopiere meine Änderungen und versuche es, es schlägt immer noch fehl. Es ist auch nicht nur eine bestimmte Datei, wenn ich das Ganze wieder auf eine vorherige Revision zurückstelle und irgendeine Datei modifiziere, tritt dieses Problem immer noch auf.

Ich habe keine Ideen mehr. Hat irgendjemand etwas?

Danke.

    
Casey 13.11.2009, 17:01
quelle

5 Antworten

5

Versuchen Sie, einen neuen Checkout zu erstellen und kopieren Sie dann Ihre Änderungen. Ich hatte auch einige unerklärliche Probleme mit TortoiseSVN, und das war das Einzige, was mir geholfen hat.

    
Leventix 13.11.2009, 17:04
quelle
3

Wenn Sie Ihre Datei aktualisieren können, scheint die Arbeitskopie ordnungsgemäß zu funktionieren.

Haben Sie das Verzeichnis oder nur die Datei aktualisiert? Ich hatte Situationen, in denen svn nicht committen konnte, weil die Verzeichniseigenschaften im Repository geändert wurden. Ein Update des Verzeichnisses löste dieses Problem.

Ein weiterer Versuch ist svn cleanup .

Neuer Checkout ist der letzte Ausweg.

    
Thomas Jung 13.11.2009 18:08
quelle
2

Hier ist ein häufiges Szenario, das ich vielen Leuten Kopfschmerzen bereitet habe. Möglicherweise befinden Sie sich in diesem Zustand:

  1. Die Arbeitskopie ist fehlerhaft. SVN beschwert sich die Datei "bar" unter "foo" Verzeichnis verursacht Probleme.
  2. Der Entwickler erstellt eine Sicherungskopie des foo Verzeichnis.
  3. Der Entwickler löscht foo dir aus der Arbeitskopie.
  4. Entwickler macht svn update, foo und bar sind zurückgesetzt und svn ist glücklich.
  5. Der Entwickler kopiert eine Sicherungskopie von foo zurück in Arbeitskopie und Svn ist nicht mehr glücklich und nicht mehr in der Lage zu aktualisieren und / oder commit

Der fatale Fehler hier war, als der Entwickler eine Sicherungskopie von dir 'foo' anlegte, sie machten auch eine Sicherungskopie aller versteckten ".svn" Verzeichnisse, die in foo verschachtelt waren.

Also ist die Lösung (in meiner Erfahrung), die "Export" -Funktion von Tortoise Svn zu verwenden, um eine Sicherungskopie von foo zu erstellen. Tortoise svn Export erstellt eine Kopie der Verzeichnisstruktur ohne svn Metadaten (.svn dirs). Auf diese Weise, sobald Sie zurück zu Schritt 3 sind und Svn ist glücklich, wenn Sie Ihre Sicherungskopie zurück in Ihre Arbeitskopie Verzeichnis kopieren, sollte Svn in der Lage sein, die Änderungen korrekt zu erfassen.

Wenn Sie jedoch nur eine einzige Datei erstellen, von der Sie eine Sicherungskopie erstellen, hilft das nicht.

    
Upgradingdave 13.11.2009 17:25
quelle
0

Für mich hat dieses Verfahren funktioniert: In einer einzigen Datei war ich zu einer alten Version der Datei zurückgekehrt. Als ich das Projekt durchführen wollte, hatte ich die Nachricht, dass diese bestimmte Datei veraltet ist und nicht festgeschrieben wurde.

Was getan werden soll, ist den Inhalt der Datei zu kopieren und zur letzten svn-Version dieser Datei zurückzukehren.

Wenn Sie fertig sind, kopieren Sie den Inhalt, den Sie gespeichert haben, in die Datei und übernehmen Sie dann den Commit. Das hat für mich funktioniert.

    
Fred 04.06.2015 15:55
quelle
0

Ich hatte diesen Fehler beim Umbenennen von Java-Paketen (Verzeichnisse für svn).

Ich habe es gelöst, indem ich "Überschreiben und Aktualisieren" für das gelöschte Verzeichnis (in meinem Projekt leer) durchgeführt habe. Dann commited das neue Verzeichnis mit Dateien. Danach löschte das im Projekt umbenannte Projekt erneut und commited es erneut.

    
Andreas L. 22.06.2016 13:02
quelle

Tags und Links