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

2voto

Alexander Punkte 8932

Führen Sie die Verschiebung direkt im Repository durch.

2voto

Binara Medawatta Punkte 512

"Aufräumen" Das wird Sie auf den richtigen Weg bringen.

Klicken Sie mit der rechten Maustaste auf den svn-Ordner und klicken Sie auf "Aufräumen", wenn Sie diesen Fehler erhalten.

2voto

Perkins Punkte 2209

Wenn Sie die github svn bridge verwenden, liegt es wahrscheinlich daran, dass sich auf der Seite von github etwas geändert hat. Die Lösung ist einfach, Sie müssen nur folgendes ausführen svn switch , damit es sich selbst richtig findet, dann aktualisieren und alles funktioniert. Führen Sie einfach das Folgende im Stammverzeichnis Ihrer Kasse aus

svn info | grep Relative 
svn switch path_from_previous_command
svn update

oder

svn switch `svn info | grep Relative | sed 's_.*: __'`
svn update

Die Grundlage für diese Lösung stammt aus Das Blog von Lee Preimesberger

2voto

infogizmo Punkte 411

Es gibt mindestens eine weitere Ursache für die Fehlermeldung "out of date". In meinem Fall war das Problem .svn/dir-props, das durch die Ausführung von "svn propset svn:ignore -F .gitignore ." zum ersten Mal erstellt wurde. Das Löschen von .svn/dir-props scheint eine schlechte Idee zu sein und kann andere Fehler verursachen, daher ist es vielleicht am besten, "svn propdel" zu verwenden, um das fehlerhafte "svn propset" zu bereinigen.

# Normal state, works fine.
> svn commit -m"bump"  
Sending        eac_cpf.xsl
Transmitting file data .
Committed revision 509.

# Set a property, but forget to commit.
> svn propset svn:ignore -F .gitignore .
property 'svn:ignore' set on '.'

# Edit a file. Should have committed before the edit.
> svn commit -m"bump"                   
Sending        .
svn: Commit failed (details follow):
svn: File or directory '.' is out of date; try updating
svn: resource out of date; try updating

# Delete the property.
> svn propdel svn:ignore .              
property 'svn:ignore' deleted from '.'.

# Now the commit works fine.
> svn commit -m"bump"     
Sending        eac_cpf.xsl
Transmitting file data .
Committed revision 510.

2voto

jgreep Punkte 2001

Sind Sie sicher, dass Sie den Kopf und nicht eine untere Revision überprüft haben? Haben Sie außerdem ein Update durchgeführt, um sicherzustellen, dass Sie die neueste Version haben?

Es gibt eine Diskussion darüber auf http://svn.haxx.se/users/archive-2007-01/0170.shtml .

0 Stimmen

Nehmen wir an, Sie wollen eine alte Kopie einchecken? Wie lässt sich das Einchecken dann am einfachsten bewerkstelligen?

0 Stimmen

Wenn Sie auf eine alte Kopie zurückgreifen wollen, checken Sie sie einfach wie gewohnt ein. Sie wird eine neue Revisionsnummer erhalten.

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