Was ist der einfachste Weg, um meine Arbeitskopie mit Windows TortoiseSVN auf eine frühere Version zurückzusetzen?
Ich habe keinen "auffindbaren" Befehl gefunden, um das schnell zu erledigen.
Dafür gibt es verschiedene Möglichkeiten. Aktualisieren Sie jedoch nicht nur auf die hier vorgeschlagene frühere Version .
Der einfachste Weg, die Änderungen einer einzelnen Revision oder eines Revisionsbereichs rückgängig zu machen, ist die Verwendung des Revisionsprotokolldialogs. Dies ist auch die Methode, mit der Sie die letzten Änderungen verwerfen und eine frühere Revision zum neuen HEAD machen möchten.
Show All
oder Next 100
, um die Revision (en) anzuzeigen, an denen Sie interessiert sind.Context Menu
→ Revert
ändert sich von dieser Revision.Context Menu
→ Revert to this revision
. Dadurch werden alle Änderungen nach der ausgewählten Revision verworfen.Sie haben die Änderungen in Ihrer Arbeitskopie rückgängig gemacht. Überprüfen Sie die Ergebnisse und übernehmen Sie die Änderungen.
Alle Lösungen werden im Abschnitt " How Do I .. " erläutert. Teil der TortoiseSVN-Dokumentation.
Ich habe die gleichen Anweisungen Stefan
verwendet, entnommen aus Tortoise-Website .
Aber es ist wichtig, gleich nach auf COMMIT zu klicken. Ich wurde verrückt, bis ich das merkte.
Wenn Sie eine ältere Revision Ihrer Head-Revision vornehmen müssen, gehen Sie wie folgt vor:
Wählen Sie die Datei oder den Ordner aus, in dem Sie die Änderungen rückgängig machen möchten. Wenn Sie alle Änderungen rückgängig machen möchten, sollte dies der Ordner der obersten Ebene sein.
Wählen Sie TortoiseSVN → Show Log, um eine Liste der Revisionen anzuzeigen. Möglicherweise müssen Sie Show All oder Next 100 verwenden, um die Revision (en) anzuzeigen, an denen Sie interessiert sind.
Klicken Sie mit der rechten Maustaste auf die ausgewählte Revision und wählen Sie dann Kontextmenü → Auf diese Revision zurücksetzen. Dadurch werden alle Änderungen nach der ausgewählten Revision verworfen.
Machen Sie ein Commit.
Klicken Sie mit der rechten Maustaste auf den Ordner, der unter SVN-Kontrolle steht, und gehen Sie zu TortoiseSVN → Protokoll anzeigen. Notieren Sie sich die Revision, zu der Sie zurückkehren möchten, und gehen Sie dann zu TortoiseSVN → pdate auf Revision ....
Der Befehl Zurücksetzen im Kontextmenü ignoriert Ihre Änderungen und versetzt die Arbeitskopie in den vorherigen Zustand. Sie können auch die gewünschte Revision außer "Head" auswählen, wenn Sie "CheckOut" aus dem Repository auswählen.
Hier ist eine andere Methode, die unorthodox ist, aber funktioniert *.
Vor kurzem befand ich mich in einer Situation, in der ich den Code eingecheckt hatte und wusste, dass ich unseren Produktionscode nicht aktualisieren konnte, bis die gesamte Integrationsarbeit stattgefunden hatte (im Nachhinein war dies eine schlechte Entscheidung, aber wir taten es nicht erwarten, dass sie ins Stocken geraten, aber andere Projekte hatten Vorrang). Das war vor einigen Monaten und die Integration ist für die gesamte Zeit ins Stocken geraten. Damit einher geht die Forderung, den Basiscode zu ändern und in der letzten Woche in Produktion zu bringen, ohne dass sich dies ändert.
Folgendes haben wir getan:
Nachdem ich vor dem Einchecken überprüft habe, dass die neue Anforderung bei der Verwendung der Revision keine Probleme verursacht, habe ich eine Kopie des Arbeitsverzeichnisses mit dem neuen Code erstellt. Dann habe ich alles im Arbeitsverzeichnis gelöscht und die gewünschte Revision ausgecheckt. Dann löschte ich alle Dateien, die ich gerade ausgecheckt hatte, und kopierte sie von der Arbeitskopie. Dann habe ich diese Änderung übernommen, die letzte Änderung effektiv aus dem Repository entfernt und den Produktionscode als Hauptrevision übernommen. Wir haben immer noch das Breaking Change zur Verfügung, aber es ist nicht mehr in der Head-Revision, so dass wir mit der Produktion fortfahren können.
* Ich empfehle diese Methode nicht, aber wenn Sie sich in einer ähnlichen Situation befinden, ist dies ein Ausweg, der nicht zu schmerzhaft ist.
Wählen Sie im TortoiseSVN-Kontextmenü "Update to Revision", geben Sie die gewünschte Revisionsnummer ein und klicken Sie auf "OK".