347 Stimmen

Wie kann man den svn-Fehler "veraltet" umgehen?

Ich habe versucht, eine Verzeichnisstruktur von einem Ort zum anderen in Subversion zu verschieben, aber ich erhalte eine Item '*' is out of date Fehler begehen.

Ich habe die neueste Version ausgecheckt (so weit ich das beurteilen kann). svn st -u ergibt keine anderen Unterschiede als die mv-Befehle.

11 Stimmen

Haben Sie svn up versucht?

3 Stimmen

Ein trivialer Problemvermeider ist: wenn man einen Ordner und den Inhalt löscht, löscht man zuerst nur den Inhalt, dann svn, dann den Ordner, dann wieder svn.

0 Stimmen

668voto

Michael Punkte 8346

Ich bekomme das manchmal mit TortoiseSVN unter Windows. Die Lösung für mich ist svn update das Verzeichnis, auch wenn keine Revisionen heruntergeladen oder aktualisiert werden müssen. Es wird etwas mit den Metadaten gemacht, was das Problem auf magische Weise behebt.

4 Stimmen

Ich änderte die svn:ignore-Eigenschaft eines Ordners und bekam den Fehler "veraltet". Aber wie Sie sagten, einfach aktualisieren es funktioniert.

4 Stimmen

Wenn ich versuche, dieses Verzeichnis zu aktualisieren, erhalte ich "svn: Two top-level reports with no target" Ein Grund mehr, SVN zu hassen. Mit Git hatte ich nie diese Art von dummen Problemen mit grundlegenden Operationen wie dem Verschieben eines Verzeichnisses.

0 Stimmen

Ich hatte einen "veralteten" Fehler in meinem übergeordneten Ordner bei Verwendung der Versions-GUI. Ich habe den übergeordneten Ordner aktualisiert und dann ohne Fehler übertragen.

42voto

Tom Bushell Punkte 5825

Nachdem ich alle offensichtlichen Dinge und einige der anderen Vorschläge hier ausprobiert hatte, ohne jegliches Glück, führte eine Google-Suche zu diesem Link (Link funktioniert nicht mehr) - Subversion sagt: Ihre Datei oder Ihr Verzeichnis ist wahrscheinlich veraltet

Kurz gesagt, der Trick besteht darin, die .svn-Verzeichnis (in dem Verzeichnis, das die beanstandete Datei enthält), und die Datei "all-wcprops" löschen .

Das hat bei mir funktioniert, als nichts anderes mehr ging.

0 Stimmen

Das war's! Danke! Hat jemand einen Vorschlag, wie das passiert und wie man es von vornherein vermeiden kann?

0 Stimmen

Das hat bei mir funktioniert. Am Ende musste ich alle "all-wcprops"-Dateien entfernen: find . -name all-wcprops -exec rm -rf {} \;

0 Stimmen

Ich denke, Sie sollten in der Lage sein, dieses Problem mit svn-Werkzeugen und Optionen zu lösen, ohne Dateien in der Struktur zu löschen

41voto

Per Löwgren Punkte 727

Ich habe festgestellt, dass dies bei mir funktioniert:

svn update
svn resolved <dir>
svn commit

0 Stimmen

Hat bei mir funktioniert, ohne dass ich svn update zuvor hatte ich ein Szenario, bei dem ich eine Aktualisierung vermeiden wollte. (also habe ich einfach resolve und commit gemacht und es hat funktioniert)

0 Stimmen

Das war DAS Heilmittel für meine Situation, nichts anderes hat funktioniert. danke!

39voto

Jim Deville Punkte 10422

Ich glaube, dass dieses Problem von der .svn-Datei herrührt. Sie ist entweder in der alten, der neuen oder der alten übergeordneten Datei fehlerhaft. Ich würde versuchen, zu Ihrem Ausgangspunkt zurückzukehren. Verwenden Sie einen Export, um eine saubere Kopie des Ordners zu erhalten. Verschieben Sie die saubere Kopie an den neuen Ort, und verwenden Sie ein Hinzufügen und Löschen, um die Verschiebung durchzuführen. Das ist zwar ein manueller Vorgang, wie ihn SVN durchführt, aber es könnte funktionieren.

4 Stimmen

Subversion kopiert und löscht tatsächlich, was etwas anderes ist als dort zu löschen und hier hinzuzufügen.

15voto

Ich habe versucht, die lokale Kopie zu aktualisieren und das betreffende Element wiederherzustellen, und erhielt immer noch die Fehlermeldung "veraltet". Dies hat aus irgendeinem Grund funktioniert:

svn update --force /path/to/dir/or/file

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X