webentwicklung-frage-antwort-db.com.de

SVN (Subversion) Problem "Datei ist zum Hinzufügen geplant, aber es fehlt"

Ich verwende Versionen für SVN.

Ich versuche zu bestätigen und diese Nachricht zu erhalten:

Commit fehlgeschlagen (Details folgen): '/Users/mike/Sites/mysite.com/astss-cvsdude/Trunk/cart/flashfile.swf' ist für das Hinzufügen geplant, ist jedoch fehlt

Ich vermute, das liegt daran, dass ich Dateien zum Repo hinzugefügt und sie dann über das Dateisystem gelöscht habe.

Ich möchte, dass es einfach meine Änderung notiert und die Änderung auf das Repo anwendet.

Wie kann ich das umgehen?

86
Mike

Ich bin nicht sicher, was Sie tun wollen: Wenn Sie die Datei über hinzugefügt haben

svn add myfile

sie haben svn nur angewiesen, diese Datei in Ihr Repository zu legen, wenn Sie das nächste Commit ausführen. Das Repository wird vor der Eingabe von nicht geändert

svn commit

Wenn Sie die Datei vor dem Festschreiben löschen, wird sie in svn gespeichert (weil Sie sie hinzugefügt haben). Sie kann sie jedoch nicht an das Repository senden, da die Datei nicht mehr vorhanden ist.

Sie möchten also entweder die Datei im Repository speichern und dann aus Ihrer Arbeitskopie löschen: Versuchen Sie in diesem Fall, Ihre Datei (aus dem Papierkorb?) Zurückzuholen, machen Sie die Festschreibung und löschen Sie die Datei anschließend über

svn delete myfile
svn commit

Wenn Sie die add rückgängig machen möchten und die Datei einfach wegwerfen möchten, können Sie eine

svn revert myfile

was svn (in diesem Fall) anweist, die Add-Operation rückgängig zu machen.

EDIT

Ich wusste nicht, dass Sie den GUI-Client "Versionen" für Max OSX verwenden. Versuchen Sie es also entweder mit der GUI im übergeordneten Verzeichnis oder führen Sie einen Sprung in das kalte Wasser aus und starten Sie die versteckte Mac-Befehls-Shell :-) (es heißt "Terminal" im deutschen OSX, keine Ahnung, wie Sie es im Englischen bringen sollen Ausführung...)

113
MartinStettner

Ich hatte das gleiche Problem mit Versionen, die dieselbe Meldung anzeigen. Ich habe einfach mit der rechten Maustaste auf die betreffenden Dateien geklickt und aus dem Rechtsklick-Menü die Option "Wiederherstellen" ausgewählt. Alles war gut.

Grundsätzlich glauben Versionen (eigentlich Subversion), dass Sie die Datei noch hinzufügen möchten, sie aber nicht finden kann, weil Sie sie im Dateisystem gelöscht haben. Die Option "Umkehren" weist Subversion an, das Hinzufügen zu vergessen.

22
mmopy

Eine Datei hinzuzufügen und dann zu löschen, ist die Art von Vorgang, die als Fehler betrachtet wird - und SVN teilt Ihnen dies mit. Sie sagten ihm, dass Sie einige Dateidaten erwarten und diese dann nicht übergeben sollten, wenn Sie ein Commit ausführen. Die roten Lichter blinken und die Sirenen gehen aus!

Die Antwort besteht darin, das Hinzufügen rückgängig zu machen, alternativ die Datei festzuschreiben und sie anschließend mit 'svn rm' aus dem Dateisystem und dem Repo zu entfernen.

10
gbjbaanb

Vermeiden Sie die Verwendung von Xcode zum Umbenennen von Dateien in einer Ordnerreferenz. Wenn Sie eine Datei mit Xcode umbenennen, wird sie zum Festschreiben markiert. Wenn Sie es später vor dem Festschreiben löschen, erhalten Sie diesen Fehler.

2
Totoro

Dies mein ähnliches Problem gelöst. Ich habe es benutzt, um die Änderungen rückgängig zu machen

svn add folder_path/*
svn commit -m "message"
2
jose

Ich habe die Datei gerade aus VS gelöscht, dann aus dem "Repository Explorer" die Datei in die Arbeitskopie kopiert.

0