Tortoise SVN Repo-Browser
-
22-07-2019 - |
Frage
ich mich gefragt, ob ich auf einer Datei im SVN-Repo-Browser rechts klicken, sie endgültig gelöscht werden erhalten? kann es wiederhergestellt werden?
Lösung
Diese Frage / Antwort aus dem SVN-FAQ Sie interessieren könnte:
Wie vollständig entferne ich eine Datei aus der Geschichte des Repository?
Es gibt spezielle Fälle, in denen Sie Vielleicht möchten Sie alle Beweise vernichten eine Datei oder begehen. (Vielleicht jemand begangen versehentlich eine vertrauliche Dokument). Dies ist nicht so einfach, denn Grabung absichtlich ausgelegt nie Informationen verlieren. Revisionen sind unveränderliche Bäume, die auf einen bauen Ein weiterer. Entfernen einer Revision aus Geschichte verursachen würde einen Dominoeffekt, Schaffung Chaos in allen späteren Revisionen und möglicherweise ungültig gemacht alle Arbeitskopien.
Das Projekt hat Pläne jedoch auf ein Tag einen
svnadmin obliterate
Befehl implementieren, würde erreichen die Aufgabe, permanent Löschen Informationen. (Siehe Frage 516).In der Zwischenzeit Ihre einzige Möglichkeit ist
svnadmin dump
Repository, dann Rohr die dumpfile durchsvndumpfilter
(mit Ausnahme des schlechten Weg) in einensvnadmin load
Befehl.
Wenn es so schwer, gibt es wenig Chancen, kann es leicht von Tortoise SVN getan werden ...
(Und es ist nicht das Ziel der Source Control ...)
Andere Tipps
Sie werden feststellen, dass Sie nur aus dem Repo-Browser löschen können, wenn Sie die HEAD Revision sehen. Dies ist identisch eine Datei aus der Arbeitskopie zu löschen und dann in der Lösch überprüfen. In beiden Fällen werden Sie zur vorigen Revision wiederherstellen können.
eine Datei über das Repo-Browser-Kontextmenü löschen schafft im Grunde eine neue globale Revision, wo nur die Datei gelöscht wurde, so erscheint es im Protokoll als solche - Sie können jederzeit zu dieser Revision zurückkehren um die Datei wieder zu bekommen, oder Ihnen nur ziehen kann es direkt aus dem Repository in Ihre Arbeitskopie.
Nein ... Löschen einer Datei (auch den Repo-Browser) wirkt sich nur auf Arbeitskopien. Es wäre ein ziemlich lausiges Versionskontrollsystem, wenn Sie eine Datei nicht aus der Vergangenheit erholen können. Es ist eigentlich ziemlich schwierig, Dateien in einer festen Revision zu ändern, auch wenn Sie Root-Zugriff auf den Server haben.
Hat nicht der rechten Maustaste nur eine Art von Menü aufzurufen? Und mit SVN ist, dass Sie immer sowieso zurückkehren können.
Ich löschte eine Top-Level-Verzeichnis von Repo-Browser durch Zufall, und der einzige Weg, es wieder zu bekommen war die folgende:
- den Top-Level-Ordner von einer früheren Version der Geschichte Exportieren
- Erstellen Sie einen neuen Ordner im Repository die eine gelöschte zu ersetzen.
- Fügen Sie die exportierten Dateien zurück in das neue Verzeichnis (denselben Namen wie vorherige)
- Aktualisieren Sie die Arbeitskopie, wird es löschen und dann die gleichen Dateien wieder hinzufügen.
Seine ärgerlich, aber zumindest die Arbeits- und Repo werden synchron zurück. Die „Revert Änderungen dieser Revision“ funktioniert nicht für Verhängnis Repo löscht, kehrt es nur in Arbeitsverzeichnis nicht die „Rückgängig“ in das Repository das löscht.