Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lernen Commits Zurücksetzen | Änderungen Rückgängig Machen
Git Essentials

bookCommits 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
Note
Hinweis

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:

Note
Hinweis

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.

Note
Hinweis

Mit den Pfeiltasten nach oben oder unten scrollen und mit der q-Taste beenden.

War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 3. Kapitel 4

Fragen Sie AI

expand

Fragen Sie AI

ChatGPT

Fragen Sie alles oder probieren Sie eine der vorgeschlagenen Fragen, um unser Gespräch zu beginnen

Suggested prompts:

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

bookCommits 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
Note
Hinweis

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:

Note
Hinweis

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.

Note
Hinweis

Mit den Pfeiltasten nach oben oder unten scrollen und mit der q-Taste beenden.

War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 3. Kapitel 4
some-alt