Commits Zurücksetzen
Im umfangreichen Bereich der Versionskontrolle mit Git tritt häufig das Szenario auf, dass Änderungen rückgängig gemacht werden müssen, die durch einen bestimmten Commit eingeführt wurden. Dies kann verschiedene Gründe haben, wie das Entdecken eines Fehlers, die Erkenntnis, dass eine Funktion noch nicht produktionsreif ist, oder der Wunsch, einen anderen Ansatz zu verfolgen.
Glücklicherweise stellt Git den Befehl git revert
zur Verfügung, um einen neuen Commit zu erstellen, der die durch den spezifischen Commit eingeführten Änderungen durch das Umkehren dieser Änderungen rückgängig macht.
Den letzten Commit rückgängig machen
Um den letzten Commit rückgängig zu machen, verwenden Sie den folgenden Befehl:
git revert HEAD
HEAD ist ein Zeiger auf den neuesten Commit im aktuellen Branch.
Da wir derzeit nur mit einem einzelnen Branch arbeiten, zeigt HEAD einfach auf den neuesten Commit. Dieser Befehl erstellt einen neuen Commit, der die im letzten Commit vorgenommenen Änderungen rückgängig macht. Git öffnet den Standard-Texteditor, damit Sie die Commit-Nachricht bei Bedarf anpassen können. Speichern und schließen Sie den Editor, um das Revert abzuschließen.
Beispiel-Workflow
Fügen wir zunächst eine neue Zeile zu unserer Datei recipe.txt
mit einem weiteren Schritt hinzu und committen diese Änderung direkt, indem wir den Staging-Bereich überspringen:
Wir können nun die detaillierten Informationen dieses Commits mit dem Befehl git show
und HEAD
anzeigen:
Ups, alle vorherigen Zeilen wurden gelöscht. Offenbar wurde der falsche Ausgabebefehl verwendet, nämlich >
anstelle von >>
, wodurch unsere Datei überschrieben wurde. Kein Problem, wir nutzen den Befehl git revert
, um diese Änderungen im letzten Commit rückgängig zu machen:
Wie zu sehen ist, wird der Standard-Texteditor geöffnet (Vim in diesem Fall) mit der Standard-Commit-Nachricht. Für den Moment bleibt diese unverändert, aber in realen Projekten empfiehlt es sich häufig, den Grund für das Zurücksetzen hinzuzufügen, zum Beispiel:
Um Änderungen zu speichern und Vim zu verlassen, die Escape-Taste und zweimal den Großbuchstaben Z drücken.
Abschließend können wir uns die Änderungen in den beiden letzten Commits ansehen:
Im Wesentlichen wurde erwartungsgemäß ein neuer Commit mit den umgekehrten Änderungen erstellt.
Mit den Pfeiltasten nach oben oder unten scrollen und mit der q-Taste beenden.
Danke für Ihr Feedback!
Fragen Sie AI
Fragen Sie AI
Fragen Sie alles oder probieren Sie eine der vorgeschlagenen Fragen, um unser Gespräch zu beginnen
Can you explain what happens if there are conflicts during a git revert?
How is git revert different from git reset?
What should I do if I want to revert an older commit, not the latest one?
Awesome!
Completion rate improved to 3.57
Commits Zurücksetzen
Swipe um das Menü anzuzeigen
Im umfangreichen Bereich der Versionskontrolle mit Git tritt häufig das Szenario auf, dass Änderungen rückgängig gemacht werden müssen, die durch einen bestimmten Commit eingeführt wurden. Dies kann verschiedene Gründe haben, wie das Entdecken eines Fehlers, die Erkenntnis, dass eine Funktion noch nicht produktionsreif ist, oder der Wunsch, einen anderen Ansatz zu verfolgen.
Glücklicherweise stellt Git den Befehl git revert
zur Verfügung, um einen neuen Commit zu erstellen, der die durch den spezifischen Commit eingeführten Änderungen durch das Umkehren dieser Änderungen rückgängig macht.
Den letzten Commit rückgängig machen
Um den letzten Commit rückgängig zu machen, verwenden Sie den folgenden Befehl:
git revert HEAD
HEAD ist ein Zeiger auf den neuesten Commit im aktuellen Branch.
Da wir derzeit nur mit einem einzelnen Branch arbeiten, zeigt HEAD einfach auf den neuesten Commit. Dieser Befehl erstellt einen neuen Commit, der die im letzten Commit vorgenommenen Änderungen rückgängig macht. Git öffnet den Standard-Texteditor, damit Sie die Commit-Nachricht bei Bedarf anpassen können. Speichern und schließen Sie den Editor, um das Revert abzuschließen.
Beispiel-Workflow
Fügen wir zunächst eine neue Zeile zu unserer Datei recipe.txt
mit einem weiteren Schritt hinzu und committen diese Änderung direkt, indem wir den Staging-Bereich überspringen:
Wir können nun die detaillierten Informationen dieses Commits mit dem Befehl git show
und HEAD
anzeigen:
Ups, alle vorherigen Zeilen wurden gelöscht. Offenbar wurde der falsche Ausgabebefehl verwendet, nämlich >
anstelle von >>
, wodurch unsere Datei überschrieben wurde. Kein Problem, wir nutzen den Befehl git revert
, um diese Änderungen im letzten Commit rückgängig zu machen:
Wie zu sehen ist, wird der Standard-Texteditor geöffnet (Vim in diesem Fall) mit der Standard-Commit-Nachricht. Für den Moment bleibt diese unverändert, aber in realen Projekten empfiehlt es sich häufig, den Grund für das Zurücksetzen hinzuzufügen, zum Beispiel:
Um Änderungen zu speichern und Vim zu verlassen, die Escape-Taste und zweimal den Großbuchstaben Z drücken.
Abschließend können wir uns die Änderungen in den beiden letzten Commits ansehen:
Im Wesentlichen wurde erwartungsgemäß ein neuer Commit mit den umgekehrten Änderungen erstellt.
Mit den Pfeiltasten nach oben oder unten scrollen und mit der q-Taste beenden.
Danke für Ihr Feedback!