Ich bin mir nicht sicher, was Sie versuchen: Wenn Sie die Datei über hinzugefügt haben
svn add myfile
Sie haben svn nur angewiesen, diese Datei beim nächsten Commit in Ihr Repository zu stellen . Es gibt keine Änderung am Repository, bevor Sie eine eingeben
svn commit
Wenn Sie die Datei vor dem Festschreiben löschen, svn
haben Sie sie in ihren Datensätzen (weil Sie sie hinzugefügt haben), können sie jedoch nicht an das Repository senden, da die Datei nicht mehr vorhanden ist.
Entweder möchten Sie die Datei im Repository speichern und dann aus Ihrer Arbeitskopie löschen: Versuchen Sie in diesem Fall, Ihre Datei zurückzubekommen (aus dem Papierkorb?), Führen Sie das Commit durch und löschen Sie die Datei anschließend über
svn delete myfile
svn commit
Wenn Sie das rückgängig machen add
und die Datei einfach wegwerfen möchten , können Sie zu einem
svn revert myfile
svn
Dies weist (in diesem Fall) an, die Add-Operation rückgängig zu machen.
BEARBEITEN
Leider war mir nicht bewusst, dass Sie den GUI-Client "Versionen" für Max OSX verwenden. Versuchen Sie also entweder, das enthaltene Verzeichnis über die GUI wiederherzustellen, oder springen Sie ins kalte Wasser und starten Sie Ihre versteckte Mac-Befehlsshell :-) (es heißt "Terminal" in der deutschen OSX, keine Ahnung, wie man es auf Englisch aufruft Ausführung...)
svn rm
die Datei verwenden, auch wenn sie nicht im Verzeichnis vorhanden ist.svn add *
fügt automatisch alle neuen, nicht versionierten Dateien hinzu undsvn commit
speichert diese Änderungen sofort im Repository. Afaik gibt es keine äquivalente Operation zum Entfernen. Wenn Sie also Dateien entfernen, müssen Siesvn rm
manuell aufrufen .svn rm
auch mit--force
funktioniert es nicht - heißt esdoes not exist
. Alsosvn revert
ist hier das Richtige zu tun.Ich hatte das gleiche Problem mit Versionen, die dieselbe Nachricht anzeigen. Ich habe einfach mit der rechten Maustaste auf die fehlerhaften Dateien geklickt und im Kontextmenü die Option "Zurücksetzen ..." ausgewählt, und alles war gut.
Grundsätzlich glaubt Versions (eigentlich Subversion), dass Sie die Datei noch hinzufügen möchten, sie kann sie jedoch nicht finden, da Sie sie im Dateisystem gelöscht haben. Die Option Zurücksetzen weist Subversion an, das Hinzufügen zu vergessen.
quelle
Das Hinzufügen und anschließende Löschen einer Datei wird als Fehler angesehen - und SVN sagt es Ihnen. Sie haben ihm gesagt, dass er einige Dateidaten erwarten und diese dann nicht bereitstellen soll, wenn Sie ein Commit durchführen. Die roten Lichter blinken und die Sirenen gehen aus!
Die Antwort besteht darin, das Hinzufügen rückgängig zu machen, die Datei alternativ festzuschreiben und sie dann mit 'svn rm' aus dem Dateisystem und dem Repo zu entfernen.
quelle
Dies löste mein ähnliches Problem. Ich habe es verwendet, um die Änderungen zurückzusetzen, dann habe ich alles hinzugefügt und Änderungen im Terminal mit festgeschrieben
quelle
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, wird dieser Fehler angezeigt.
quelle
Ich habe gerade die Datei aus VS gelöscht und dann aus dem 'Repository Explorer' die Datei in die Arbeitskopie kopiert.
quelle
Wenn Sie TortoiseSVN verwenden…
In Ihrem Festschreibungsfenster im Abschnitt "Änderungen vorgenommen" können Sie alle fehlerhaften Dateien auswählen, dann mit der rechten Maustaste klicken und Löschen auswählen. Wenn Sie das Festschreiben beenden, werden die Dateien aus den geplanten Ergänzungen entfernt.
quelle