Arbeitskopie XXX gesperrt und Bereinigung in SVN fehlgeschlagen

582

Ich erhalte diesen Fehler, wenn ich Folgendes mache svn update:

Arbeitskopie XXXXXXXX gesperrt Bitte führen Sie den Befehl "Aufräumen" aus

Wenn ich bereinige, bekomme ich

Die Bereinigung konnte die folgenden Pfade nicht verarbeiten: XXXXXXXX

Wie komme ich aus dieser Schleife heraus?

Dan
quelle
5
Ich habe auch diese Nachricht erhalten. Die Antworten sahen etwas langweilig aus (insbesondere die am höchsten bewerteten). Ich habe gerade VS geschlossen und die Lösung erneut getestet und konnte alles einchecken.
oscilatingcretin
Der folgende Kommentar von eakkas zum Löschen von Einträgen aus der Tabelle WORK_QUEUE mit dem SQLLite-Manager von Firefox hat das Problem für mich behoben.
Zeppelin
12
Es gibt eine einfache Antwort, aktivieren Sie einfach die Option "Sperren aufheben" und das wird Ihre Arbeitskopie bereinigen
Farhan

Antworten:

517

Ein Ansatz wäre:

  1. Kopieren Sie bearbeitete Elemente an einen anderen Speicherort.
  2. Löschen Sie den Ordner mit dem Problempfad.
  3. Aktualisieren Sie den enthaltenen Ordner über Subversion.
  4. Kopieren Sie Ihre Dateien zurück oder führen Sie Änderungen nach Bedarf zusammen.
  5. Verpflichten

Eine andere Möglichkeit wäre, den Ordner der obersten Ebene zu löschen und erneut auszuchecken. Hoffentlich kommt es aber nicht dazu.

Chuck
quelle
123
+1 an Sie für diese Problemumgehung, um nicht nur das Problem des OP (und meines) zu beheben, sondern auch, um die 5 Schritte anzugeben, die anscheinend jedes SVN-Problem beheben. -1 bis Subversion für benötigte solche Problemumgehungen.
pxl
34
Obwohl dies technisch funktioniert, ist es im Vergleich zum Entfernen der Sperren ein so schlechter Weg, dass es eine Ablehnung verdient.
Jukka Dahlbom
8
Ich kann Schritt 3 nicht ausführen, weil ... "Arbeitskopie ist bereits gesperrt"
Evgeny
20
Betrachten Sie den Rat von BradS. "Für mich bestand der Trick darin, 'svn cleanup' oben in meiner Arbeitskopie auszuführen, nicht in dem Ordner, in dem ich die ganze Zeit gearbeitet hatte, bevor das Problem auftrat."
Marco
5
Wenn Sie Tortoise SVN verwenden, können Sie den Stammordner des Check-out-Verzeichnisses bereinigen und Break Locks erzwingen. Außerdem können Sie ihn bitten, nicht versionierte Dateien zu löschen. Dann nimm ein Update.
Obaid
476

Für mich bestand der Trick darin, svn cleanupoben in meiner Arbeitskopie zu laufen , nicht in dem Ordner, in dem ich die ganze Zeit gearbeitet hatte, bevor das Problem auftrat.

BradS
quelle
funktioniert normalerweise, funktioniert aber nicht mehr, ich bin mir nicht sicher, ob es daran liegt, dass ich
Populus
4
Dies funktionierte für mich mit einem Client mit 1.7, obwohl der Server immer noch 1.6.x ist
Mark Hosang
Arbeitete für mich am 1.7 sehr geschätzt
Scarpacci
1
Ich habe den Hinweis aus Intus Antwort mit diesem kombiniert: Suchen Sie nach dem übergeordneten Ordner, dessen .svn-Ordner eine "Sperr" -Datei enthält, und führen Sie dort "svn cleanup" aus. Das hat bei mir funktioniert.
Rob74
5
Das funktioniert bei mir viel schneller als bei Chuck. Es ist also einen Versuch wert, dies zuerst zu tun.
Goamn
210

Schauen Sie in Ihren .svnOrdner, es wird eine Datei mit dem Namen sein lock. Löschen Sie diese Datei und Sie können sie aktualisieren. Möglicherweise befinden sich mehr Sperrdateien im .svnVerzeichnis jedes Unterverzeichnisses. Sie müssen auch gelöscht werden. Dies könnte ganz einfach über die Kommandozeile mit z

find . -name 'lock' -exec rm -v {} \;

Beachten Sie, dass Sie Dateien im .svnOrdner manuell bearbeiten . Sie wurden aus einem bestimmten Grund dorthin gebracht. Dieser Grund könnte ein Fehler sein, aber wenn nicht, könnten Sie Ihre lokale Kopie beschädigen.

QUELLE: http://www.svnforum.org/2017/viewtopic.php?p=6068

Intu
quelle
8
+1 Ich denke, dies ist ein viel besserer Ansatz als die derzeit am höchsten bewertete Antwort. Ich hasse es, die Dateien zuerst an eine andere Stelle kopieren zu müssen, um dieses (häufig auftretende!) Problem zu umgehen. Meins wurde durch ein Tool zur Codegenerierung verursacht, das Dateien mit demselben Namen generiert, den bereits jemand anderes zu SVN hinzugefügt hat. Mein schlechtes für nicht "svn up" zuerst nehme ich an ...
alpian
44
Dies funktioniert nicht mehr mit Tortoise / SVN 1.7 (oder zumindest konnte ich keine Sperrdatei finden, da es jetzt eine zentralisierte Datenbank mit den Metadaten gibt).
Pesche
10
Hier ist ein kurzer Einzeiler, der alle Sperren, die im aktuellen Verzeichnis beginnen, rekursiv löschen sollte:find . | grep ".svn/lock" | xargs rm
Jesse
1
Mit SVN 1.7 scheint die Antwort von @ BradS effektiver zu sein. Diese Antwort hat bei mir nicht funktioniert, und bei BradS.
Ira Baxter
1
In meinem Fall ist nirgendwo eine Sperrdatei zu finden.
Tim MB
106

In meinem Fall habe ich es gelöst, indem ich einen Datensatz im SQLite-Dateisperrdatensatz ".svn \ wc" in der Tabelle WC_LOCK manuell gelöscht habe.

Ich habe die "WC" -Datei mit dem SQLite-Editor geöffnet und ausgeführt

delete from WC_LOCK

Screenshot mit allen Einträgen, die aus WC_LOCK gelöscht wurden

Nach dem Kommentar von eakkas müssen Sie möglicherweise auch alle Einträge aus der WORK_QUEUETabelle löschen .

Gad D Lord
quelle
1
Dies funktionierte für mich für Subversion 1.7.5 unter Windows. Die Testversion von SQLite Expert wurde hier heruntergeladen : sqliteexpert.com/download.html . Führen Sie die SQL-Anweisung "delete" oben auf der Registerkarte "SQL" aus.
M Katz
Das ist viel viel besser, nur ein Unterschied ist, dass ich auf den roten (-) Knopf geklickt habe
Rohit Srivastava
3
Ein kostenloser DI SQL Spy würde auch den Trick machen: yunqa.de/delphi/doku.php/products/sqlitespy/index
Ivelin Nikolaev
12
Dies funktionierte auch für mich, aber ich musste auch die Einträge in der Tabelle
WORK_QUEUE
6
Hat nicht funktioniert, indem das Element aus WC_LOCK gelöscht wurde. Was funktioniert hat, war das Betrachten des Blob-Inhalts meines WORK_QUEUE-Elements und sicher genug, dass es sich um die Problemdatei handelte. Ich habe die Datei aus dem Repo-Browser entfernt und anschließend das Element work_queue gelöscht lief eine Bereinigung und wieder im Geschäft!
GregM
95

Der einfachste Weg aller Zeiten:

  1. Wechseln Sie zum übergeordneten Verzeichnis (Ordner) des Projekts .
  2. Pres Rechtsklick
  3. Drücken Sie auf TortoiseSVN und dann auf Aufräumen ...
  4. Der Bereinigungsdialog wird automatisch angezeigt
  5. Wählen Sie Clean up working copy status, Break locks, Fix time stamps, Vacuum pristine copies, Refresh shell overlays,Include externals
  6. Pres OK

Sie haben Ihre Arbeit erfolgreich gemacht.

Überprüfen Sie die Screenshots als Referenz.

Erster Schritt:

Geben Sie hier die Bildbeschreibung ein

Zweiter Schritt: Aktivieren Sie die Option Unterbrechungssperre (zweites Kontrollkästchen im Popup-Fenster für die Bereinigung). Geben Sie hier die Bildbeschreibung ein

Hoffe das wird dir sehr helfen.

Hiren Patel
quelle
10
In meinem Fall war die Option "Break Lock" ausreichend, vielleicht versuchen Sie es zuerst nur mit dieser
Donatello
Gute Antwort. Ich hatte einen Fall von 'Dialogblindheit' mit diesem und habe die Bereinigungsoptionen nie überprüft. In der Vergangenheit funktionierte das "Navigieren zum Rooten und Aufräumen", aber ich denke, das Aufbrechen der Schlösser war in meinem Fall ausreichend.
Phil Cooper
1
Hat auch für mich gearbeitet!
Daniel Silva
Ich hätte nicht gedacht, dass 'Lock Locks' das tun würde, weil ich keine Schlösser gemacht habe. Aber anscheinend bricht es SVN-interne Sperren, die dieses Problem verursacht haben. Vielen Dank!
Basher
Hat bei mir nicht funktioniert 😦
Warlike Chimpanzee
48

Ein Arbeitskollege sieht diese Nachricht ständig, und für ihn liegt es daran, dass er ein Verzeichnis unter SVN-Versionskontrolle gelöscht hat, ohne es aus SVN zu löschen, und dann an seiner Stelle ein neues Verzeichnis mit demselben Namen erstellt hat, das nicht unter Versionskontrolle steht.

Wenn dies Ihr Problem ist ...:

Es gibt verschiedene Möglichkeiten, dies zu beheben, je nachdem, wie / warum das Verzeichnis ersetzt wurde.

In jedem Fall müssen Sie wahrscheinlich:

A) Benennen Sie das vorhandene Verzeichnis in einen temporären Namen um

B) Führen Sie eine SVN-Wiederherstellung durch, um das aus dem Dateisystem gelöschte Verzeichnis wiederherzustellen, jedoch nicht aus SVN

Von dort würden Sie entweder

A) Kopieren Sie die relevanten Dateien in das Verzeichnis, das gelöscht wurde

B) Wenn Sie eine wesentliche Änderung des Inhalts im Verzeichnis hatten, löschen Sie das Original des SVN, schreiben Sie es fest und benennen Sie Ihr neues Verzeichnis wieder in den gewünschten Namen um, gefolgt von einem SVN-Add, um dieses unter Versionskontrolle zu bringen.

Matt
quelle
1
Ihr zweiter Schritt B) scheint mir eine sehr schlechte Idee zu sein, da dies den Revisionsverlauf für Elemente des ursprünglichen Verzeichnisses, die in der neuen Version gespeichert sind, unterbrechen würde.
Dunaril
Die sehr schlimmen Dinge passierten, als die Person ein versioniertes Verzeichnis aus dem Dateisystem löschte, aber nicht aus SVN. Die obige Antwort ist möglicherweise keine perfekte Wiederherstellung, aber es ist eine Wiederherstellung.
Teemu Leisti
34

Bei mir hat keine der oben genannten Lösungen funktioniert. Ich fand eine Lösung, indem ich Schlösser aufbrach. Bei der svn-Bereinigung habe ich "Sperren aufheben" zusammen mit "Status der Arbeitskopie bereinigen" ausgewählt.

Geben Sie hier die Bildbeschreibung ein

LoveForDroid
quelle
Bei mir hat es funktioniert, die Sperre des Tortoise SVN Repo Browsers zu brechen. Das Aufheben der Sperre für den ausgecheckten Ordner hat nichts bewirkt.
Bhargava Mummadireddy
23

Dieser hat für mich gearbeitet.

  1. Gehen Sie zum Stammordner.
  2. Rechtsklick und Bereinigung
  3. Überprüfen Sie alle verfügbaren Optionen
  4. Drücke OK

Nach der Bereinigung können Sie auf die neueste Version aktualisieren.

Lanze
quelle
2
Das funktioniert auch bei mir. Sie müssen alle verfügbaren Optionen (6 Einträge in meiner Version) überprüfen, um mit der Bereinigung fortzufahren. Es schlägt fehl, wenn Sie nur die Optionen [Status der Arbeitskopie bereinigen] und [Externe einschließen] aktivieren.
Vincent Jia
1
Das hat bei mir total funktioniert ... einfach mit der rechten Maustaste auf Projekt> Team> Aufräumen. Ich musste keine Zeile aus der SQL in .svn oder irgendetwas anderem entfernen. Genau das hat den Job gemacht. Vielen Dank!
Msqar
Dies funktionierte auch für mich in Version 1.7.4 von TortoiseSVN. Ich habe die Standard-Kontrollkästchen verwendet, die angezeigt wurden.
Slm
Hat mir heute geholfen, aber ich musste nicht alle verfügbaren Optionen überprüfen. Die letzten drei, die meine Änderungen rückgängig machen, habe ich nicht überprüft, und es hat trotzdem funktioniert. Siehe auch stackoverflow.com/a/35192644/460775
EMBarbosa
1
Das hat bei mir funktioniert. Ich habe gerade nachgesehen Clean up working copy statusund Breaks locksundInclude externals
Phiber
11

Für mich war es tatsächlich Tortoises Schuld. Tortoise beschwerte sich nur, dass "nicht bereinigen, bereinigen" ausgeführt werden kann, aber als ich die Befehlszeile (svn cleanup) ausführte, wurde mir klar, dass einige verwendete Dateien nicht gelöscht werden konnten, deren Lösung offensichtlich war. Nachdem ich Visual Studio geschlossen hatte (wodurch die Dateien geöffnet blieben), funktionierte die Bereinigung einwandfrei.

Andere Programme können auch Dateien im Repo offen halten, die dieses Problem verursachen. Excel, das ein XLS offen hält, war in einem anderen Fall ein Schuldiger. Daher ist es möglicherweise ratsam, alle Programme zu schließen, die möglicherweise etwas im Repo verwenden, oder sogar einen Neustart durchzuführen, um das Schließen von Programmen zu erzwingen und anschließend eine Bereinigung erneut zu versuchen.

Mark Sowul
quelle
7

Ich hatte dieses Problem, weil externe Ordner nicht mit einem vorhandenen Ordner verknüpft werden möchten. Wenn Sie eine svn: externals-Eigenschaftszeile hinzufügen, in der das Ziel ein vorhandener (versionierter oder nicht versionierter) Ordner ist, wird der Fehler "SVN Woring Copy gesperrt" angezeigt. Hier sagt Ihnen eine Bereinigung auch, dass alles in Ordnung ist, aber die Aktualisierung immer noch nicht funktioniert.

Lösung: Löschen Sie den problematischen Ordner aus dem Repository und führen Sie eine Aktualisierung im Stammordner durch, in dem die Eigenschaft svn: externals festgelegt ist. Dadurch wird der Ordner erstellt und alles wird wieder in Ordnung sein.

Dieses Problem trat bei mir auf, weil für svn: externals für Dateien der Versionsordner versioniert werden muss. Nachdem ich festgestellt hatte, dass dies in verschiedenen Repositorys nicht funktioniert, wechselte ich von externen Dateien zu externen Ordnern und geriet in dieses Chaos.

Oliver Zendel
quelle
6

Der einfachste Weg, dies zu tun, besteht darin, versteckte Ordner anzuzeigen und dann den .SVN-Ordner zu öffnen. Sie sollten eine Null-KB-Datei mit dem Namen "lock" sehen, die das Problem behebt, wenn Sie dies löschen

fawefawefa
quelle
5

Ich bin mit SVN 1.7 auf genau dasselbe Problem gestoßen, und keine der oben genannten Korrekturen hat funktioniert.

Stellen Sie in erster Linie sicher, dass Sie alle bearbeiteten Inhalte sichern.

Nachdem ich ein paar Stunden verbracht hatte (nicht alles neu heruntergeladen, da mein Zweig über 6 GB groß ist), stellte ich fest, dass sich im .svn-Ordner Ihres Zweigs eine Datenbankdatei mit dem Namen "wc" befindet.

Öffnen Sie die Datenbankdatei mit einem beliebigen Datenbankmanager (ich habe das SQLite-Manager-Plugin von Firefox verwendet) und navigieren Sie zur Tabelle WC_LOCK. Diese Tabelle enthält die Einträge für die erfassten Sperren. Löschen Sie die Datensätze aus der Tabelle und Sie sind fertig :)

Rohan
quelle
Obwohl es so ziemlich ein Duplikat der vorherigen Antwort war, habe ich Ihnen eine Stimme gegeben, weil Sie das Firefox SQLite Manager-Plugin erwähnt haben.
Ehambright
3

Wenn ich dieses Problem habe, finde ich, dass das Ausführen des Bereinigungsbefehls direkt auf dem Problempfad im Allgemeinen zu funktionieren scheint. Dann führe ich erneut eine Bereinigung vom Arbeitsstamm aus und beschwere mich über ein anderes Verzeichnis. und ich wiederhole nur, bis es aufhört, sich zu beschweren.

stephen
quelle
1
Ich konnte keine Sperrdatei wie bei den vorherigen Antworten finden, aber das hat bei mir funktioniert :)
serenskye
3

Wenn Sie sich auf einem Windows-Computer befinden, zeigen Sie das Repository über einen Browser an. Möglicherweise werden zwei Dateien mit demselben Dateinamen angezeigt, die jedoch unterschiedliche Fälle verwenden. Bei Subversion wird zwischen Groß- und Kleinschreibung unterschieden, und Windows ist nicht so, dass Sie eine Sperre erhalten können, wenn Windows denkt, dass dieselbe Datei abgerufen wird und Subversion dies nicht tut. Löschen Sie die doppelten Dateinamen im Repository und versuchen Sie es erneut.

toxaq
quelle
3

Ich habe dazu einfach einen neuen Ordner erstellt, das Projekt ausgecheckt und die aktualisierten Dateien in den neuen Ordner kopiert.

Es wurde mit einer neuen Kasse behoben.

Don
quelle
Ich tat das gleiche. (Ich habe die Hauptursache darauf zurückgeführt, dass AnkhSVN meine Arbeitskopie durcheinander gebracht hat. AnkhSVN ist jetzt deinstalliert.)
Scotty.NET
2

Verwenden Sie TortoiseSVN und haben gerade ein Upgrade durchgeführt? Ich hatte dieses Problem schon einmal, als ich von 1.4 auf 1.5 wechselte und nicht neu startete. (Versuchen Sie einen Neustart).

Der Grund, warum Sie neu starten müssen, ist, dass die Cache-Datei alle funky wird.

Andernfalls exportieren Sie diese Arbeitskopie in einen neuen Ordner (kopieren Sie nicht die versteckten .svn-Ordner), checken Sie das Projekt erneut aus und verschieben Sie den gesamten Code zurück. Fahren Sie dann mit dem Festschreiben fort.

Adam
quelle
Das ist mir auch passiert, das heißt, ich musste nur neu starten
Matthew Lock
2

Löschen Sie einfach die .svn-Ordner und führen Sie eine Bereinigung des übergeordneten Verzeichnisses durch. Funktioniert perfekt!!

Ben
quelle
3
In SVN 1.7 funktioniert dies nicht, da sich oben nur ein .svn-Ordner befindet. Wenn gelöscht, wird der Anhang zum Repository entfernt.
AnneTheAgile
2

In Versionen unter Mac OS: Aktion -> Bereinigen von Arbeitskopiesperren bei ...

HotJard
quelle
2

Ich bekomme oft so ein Problem. Mein Muster, das Aufräumprobleme verursacht.

  1. Ich öffne die Bilddatei im Viewer.
  2. Ich lösche Bilddatei / Ordner.
  3. Ich versuche, ein Commit / Update durchzuführen

Das Schließen des Bildbetrachters, in dem die gelöschte Datei geöffnet wird, löst das Problem. Möglicherweise kann andere Software die Bereinigung auf die gleiche Weise blockieren.

Allgemein. Ich glaube, ein Neustart des Computers kann in solchen Fällen hilfreich sein.

Dmitry Borisov
quelle
1

SVN aktualisiert normalerweise die interne Struktur (.svn / prop-base) der Dateien in einem Ordner, bevor die tatsächlichen Dateien aus dem Repository abgerufen werden. Sobald die Dateien abgerufen wurden, wird dies gelöscht. Häufig wird der Fehler ausgelöst, weil das "Update" während des Update-Fortschritts fehlgeschlagen oder vorzeitig abgebrochen wurde.

  1. Überprüfen Sie, ob alle Dateien im Verzeichnis .svn / prop-base aufgeführt sind
  2. Entfernen Sie alle Dateien, die sich nicht unter dem Ordner befinden
  3. Aufräumen
  4. Aktualisieren

Jetzt sollte das Update funktionieren.

lud0h
quelle
1

Hatte das gleiche Problem, weil ich einen Ordner unter einem versionierten Ordner exportiert habe. Musste den Ordner aus TortoiseSVN löschen, dann den Ordner aus dem Dateisystem löschen (TortoiseSVN mag keine nicht versionierten Unterordner ... warum nicht ???)


quelle
Ich sollte hinzufügen, dass ich einen Ordner in den gleichen Ordner exportiert habe. versionierte Ordner.
1

Suche starten .... Sperren ... Alle aufgelisteten Dateien auswählen und löschen..fixiert

Ryan
quelle
1

Folgendes sollte reichen:

svn status | grep ". L" | sed 's /.* (. *) $ / \ 1 /' | awk '{Drucklänge ($ 1), $ 1}' | sort -nr | awk '{print "pushd" $ 2 "; svn cleanup; popd"}' | Sch

Bugfeeder
quelle
1

Löschen Sie Ihre Lösung nicht!

Im Ordner .svn befindet sich eine Datei mit dem Namen lock, die 0 Byte lang ist

Sie können alle diese Dateien aus allen .svn-Ordnern in Ihrer Lösung löschen, und es wird funktionieren

In meinem Fall hat es funktioniert

Abs
quelle
Dies ist die einfachste Lösung! Arbeitete für mich
Nathan
Ja, leider funktioniert es nicht für die neueste Version von SVN. Für die neueste Version müssen Sie sie löschen, da keine Sperrdatei mehr vorhanden ist. Es scheint keine Dateien mehr zu geben, es gibt eine ganz andere Ordnerstruktur. Wenn jemand weiß, ob es noch etwas gibt, das auf ähnliche Weise wie oben geändert werden kann, teilen Sie es uns bitte mit.
Para
1

Das direkte Unversionieren der Dateien und ein erneutes Auschecken am selben Speicherort haben dieses Problem für mich gelöst.

Um in TortoiseSVN eine direkte Unversionierung durchzuführen, ziehen Sie den Stammordner der Arbeitskopie aus der Dateiliste mit der rechten Maustaste auf sich selbst in der Verzeichnisstruktur und wählen Sie im Popup-Menü die Option "SVN exportierte Elemente hier exportieren". TortoiseSVN stellt fest, dass das Ziel mit der Quelle identisch ist, und schlägt vor, die Arbeitskopie zu deaktivieren.

Führen Sie nach dem Unversionieren einen neuen Checkout in demselben Ordner durch (der jetzt eine nichtversionierte Kopie aller vorhandenen Dateien enthält). TortoiseSVN warnt Sie, dass Sie in einen vorhandenen Ordner auschecken, aber Sie können fortfahren.

Danach funktionierten Bereinigungen, Updates und andere Vorgänge reibungslos. Da in beiden oben genannten Schritten lokale Änderungen beibehalten werden, sollte kein Informationsverlust auftreten (es kann jedoch eine gute Idee sein, die Arbeitskopie vorher zu sichern).

Eine Warnung: Wenn die Arbeitskopie gemischte Versionen oder nicht festgeschriebene Eigenschaftsänderungen enthält, gehen diese Informationen verloren. Für mich ist dies kein alltägliches Ereignis, und angesichts der Wahl einer beschädigten Arbeitskopie oder des Verlusts nicht festgeschriebener Eigenschaftsänderungen entscheide ich mich eher für Letzteres.

Magnus
quelle
1

Ich hatte dieses Problem, bei dem das "Aufräumen" funktionierte, aber das "Update" weiterhin fehlschlug. Die Lösung bestand darin, den betreffenden Ordner über den Windows Explorer zu löschen, nicht über das Löschen von TortoiseSVN (was das Löschen als etwas festlegt, das in das Repository übernommen werden soll, und dann habe ich eine "Prüfung" durchgeführt, um den Ordner im Wesentlichen aus dem Repository zu "aktualisieren".

Weitere Informationen zum Unterschied zwischen einem O / S-Löschvorgang und einem SVN-Löschvorgang finden Sie hier: http://tortoisesvn.net/docs/release/TortoiseSVN_en/tsvn-dug-rename.html

Vor allem:

Wenn Sie TortoiseSVN → Eine Datei löschen, wird diese sofort aus Ihrer Arbeitskopie entfernt und beim nächsten Commit zum Löschen im Repository markiert.

Und:

Wenn eine Datei über den Explorer gelöscht wird, anstatt das TortoiseSVN-Kontextmenü zu verwenden, werden diese Dateien im Commit-Dialogfeld angezeigt und Sie können sie auch vor dem Commit aus der Versionskontrolle entfernen. Wenn Sie jedoch Ihre Arbeitskopie aktualisieren, erkennt Subversion die fehlende Datei und ersetzt sie durch die neueste Version aus dem Repository.

Xonatron
quelle
1

Wenn Sie unter Linux arbeiten, versuchen Sie Folgendes:

find "/the/path/to/your/directory" -name .svn -type d | xargs chmod 0777 -R

Führen Sie dann den cleanupBefehl in diesem Verzeichnis aus und versuchen Sie zu aktualisieren.

The Love Of Ocde
quelle
1

Ich habe Folgendes getan, um mein Problem zu beheben:

  1. Benennen Sie den fehlerhaften Ordner um, indem Sie ein "_" vor den Ordnernamen setzen.
  2. Hat eine "Bereinigung" des übergeordneten Ordners durchgeführt.
  3. Der fehlerhafte Ordner wurde wieder in den ursprünglichen Namen umbenannt.
  4. Habe ein Commit gemacht.
user1319487
quelle
1

Klicken Sie im Solution Explorer mit der rechten Maustaste auf das Projekt, klicken Sie im ersten Untermenü auf Subversion und wählen Sie Bereinigen. Es wird das Problem lösen, so wie es für mich getan hat. Hoffe es wird funktionieren.

Nadeem Jamali
quelle
1

Aufräumen

  1. Löschen Sie den Ordner .svn.

  2. Führen Sie den svncheckout im Stammordner durch.

  3. Versuchen Sie, den Bereinigungsvorgang durchzuführen.

Dadurch wurde mein Problem behoben.

Jayaguru
quelle