2014-04-04 6 views
36
"zu dieser Revision zurückkehren"

Der Link:TortoiseSVN - "zurückzukehren Änderungen dieser Revision" vs

http://tortoisesvn.net/docs/nightly/TortoiseSVN_en/tsvn-howto-rollback.html

beschreibt zwei Möglichkeiten Walzen ein SVN-Verzeichnis nach einem ungerechten begehen zurück. Was ist der Unterschied zwischen den beiden Optionen ist

Revert changes from this revision 
Revert to this revision 

Als Test habe ich eine Datei, rolling „Revert Änderungen dieser Revision“ mit zurück und tat das gleiche Verfahren für die „Revert zu dieser Revision“, und es ist kein Unterschied zum Status des SVN-Protokolls.

Fehle ich etwas?

Antwort

67

Angenommen, Sie haben diese N aufeinander verpflichtet: 1, 2, 3 und 4.

Wenn Sie das Commit 2 und wählen „zu dieser Version zurück“, Ihre Arbeitskopie an die Änderungen gebracht durch Commits enthalten 1 und 2. Commits 3 und 4 werden "abgebrochen".

Wenn Sie das Commit 2 auswählen und "Änderungen von dieser Revision rückgängig machen" wählen, enthält Ihre Arbeitskopie die Änderungen der Commits 1, 3 und 4. Commit 2 wird "abgebrochen" bzw. rückwärts abgespielt am Anfang von Commit 4: Wenn eine Zeile hinzugefügt wurde, wird sie entfernt. Wenn eine Zeile entfernt wurde, wird sie erneut gesendet.

+0

Ich verstehe immer noch nicht, wie diese Option funktioniert, wenn ich eine leere Datei habe und ich schreibe 1 in diese Datei, commit und dann schreibe 2 und commit, und schreibe dann 3 und dann commit.Jetzt öffne ich den show log Dialog und wähle das zweite Commit und setze die Änderungen von dieser Revision zurück, nachdem der Konflikt gelöst wurde. Die Datei ist jetzt 123, sollte nicht 2 gelöscht werden? Es sollte 13 sein, aber nicht 123. – Nibnat

+0

@Nibnat Sie wahrscheinlich die 2 wieder hinzugefügt, wenn Sie den Konflikt lösen. –

0

Clientseitige Vorgänge werden nicht in den Repository-Protokollen angezeigt. Sie wollen wahrscheinlich überprüfen:

  • TortoiseSVN → SVN Auf Änderungen prüfen

..., um die Unterschiede zwischen den beiden Aktionen zu sehen.

Nach Überprüfung der lokalen Änderungen müssen Sie wie üblich commit.

8

Für eine Einzel und neuesten begehen, gibt es keinen Unterschied .

Der Unterschied kommt, wenn Sie eine Revision irgendwo in der Mitte Ihrer Änderungsliste verwenden möchten.

Revert to this revision zufällt alle verpflichtet von Kopf bis diese Revision.
Revert changes from this revision wird nur das Commit dieser bestimmten Revision zurückgesetzt.

1

Wenn Sie möchten, dass Ihr gesamter lokaler Quellcode wieder in den ursprünglichen Zustand zurückkehrt, wählen Sie "Auf diese Version zurücksetzen". Wenn Sie stattdessen Ihre lokale Quelle auf dem neuesten Stand halten möchten, aber einige Änderungen rückgängig machen möchten, die vor mehreren Revisionen vorgenommen wurden, möchten Sie nicht, dass Ihre gesamte lokale Quelle zurückgeht. Sie möchten nur diese eine Änderung rückgängig machen vor einiger Zeit. "Änderungen von dieser Revision rückgängig machen" ermöglicht dies.

Verwandte Themen