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

bookEinen Bestimmten Commit Zurücksetzen

git revert

Um einen bestimmten Commit rückgängig zu machen, verwenden Sie den Befehl git revert. Dieser Befehl erstellt einen neuen Commit, der die durch den angegebenen Commit eingeführten Änderungen rückgängig macht. Grundlegende Syntax:

git revert <commit-hash>

Anstatt HEAD (welches den letzten Commit anspricht) zu verwenden, geben Sie den Hash des Commits (Commit-ID) an, den Sie rückgängig machen möchten, indem Sie <commit-hash> durch den tatsächlichen Hash-Wert ersetzen.

Mehr über Hashes

Jeder Commit besitzt eine eindeutige ID — eine 40-stellige hexadezimale Zeichenkette bestehend aus Ziffern (0–9) und Buchstaben (a–f). Dieser Bezeichner wird als Hash bezeichnet. Nun können Sie den neuesten Commit anzeigen:

Der neueste Commit

Hier ist sein Hash:

1b00736255dca7d78659a9971d0c30fba0eb3075

Note
Hinweis

Für diesen Commit wird ein anderer Hash angezeigt, aus dem unten erläuterten Grund.

Der Commit-Hash wird mit dem SHA-1-Algorithmus anhand der folgenden Informationen berechnet:

  • Commit-Nachricht;
  • Datum;
  • Autor;
  • Snapshot des Arbeitsverzeichnisses;
  • Hash des übergeordneten Commits (oder der Commits, wenn es mehr als einen Vorgänger gibt).

Handelt es sich um den ersten Commit im Repository, wird der Hash des übergeordneten Commits offensichtlich nicht berechnet.

Da alle diese Commit-Informationen zur Berechnung des Hashwerts verwendet werden, sorgt die Verwendung von Hashes als Commit-IDs für die Konsistenz des Repositorys. Außerdem ist die Wahrscheinlichkeit, dass zwei verschiedene Commits denselben Hashwert haben (die Wahrscheinlichkeit einer Kollision), extrem gering, sodass dies sehr unwahrscheinlich ist.

Im Grunde genommen ändert sich der Hashwert, sobald sich etwas am Commit ändert. Das bedeutet, dass Git im Falle einer Beschädigung der Daten aus welchem Grund auch immer den Hashwert zur Identifizierung nutzen kann.

Note
Hinweis

Beim Ändern eines Commits ändert sich die Commit-ID, weshalb es besser ist, den Befehl git commit --amend nicht zu verwenden, wenn mit Remote-Repositories gearbeitet wird.

Beispiel-Workflow

Bevor entschieden wird, welcher Commit zurückgesetzt werden soll, die vier letzten Commits anzeigen:

Vier letzte Commits

Es gibt einen Commit, bei dem die Datei recipe.txt hinzugefügt wurde. Revert dieses Commit, um einen neuen Commit zu erstellen, der diese Änderungen rückgängig macht und die Datei effektiv löscht. In diesem Beispiel lautet der Commit-Hash:

043b634d76a7a7744757350512b6367417c29e0

Dein Commit-Hash wird abweichen. Nun diesen Commit revert:

Ersetze diesen Hash durch deinen eigenen Hash.

Git revert

Erneut öffnet sich der Standard-Texteditor mit der Standard-Commit-Nachricht für das Revert. Die Nachricht unverändert lassen.

Standard-Revert-Commit-Nachricht

Schließen Sie anschließend den Texteditor ordnungsgemäß und zeigen Sie die im letzten Commit vorgenommenen Änderungen an:

Der letzte Commit

7 Löschungen wurden durchgeführt, das heißt, alle sieben Zeilen der Datei wurden entfernt. Überprüfen Sie nun, ob die Datei selbst gelöscht wurde, indem Sie alle nicht versteckten Dateien und Verzeichnisse im Projektverzeichnis auflisten:

Auflisten von Dateien und Verzeichnissen

Die Datei recipe.txt wurde erfolgreich gelöscht.

question-icon

Ordnen Sie die Aktionen den jeweiligen Befehlen zu.


Revert the latest commit:

Revert a specific commit:

Unstage changes:

Revert unstaged changes:

Unstage changes and then revert the changes in the working directory:

Overwrite the existing commit:

Click or drag`n`drop items and fill in the blanks

War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 3. Kapitel 5

Fragen Sie AI

expand

Fragen Sie AI

ChatGPT

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

Awesome!

Completion rate improved to 3.57

bookEinen Bestimmten Commit Zurücksetzen

Swipe um das Menü anzuzeigen

git revert

Um einen bestimmten Commit rückgängig zu machen, verwenden Sie den Befehl git revert. Dieser Befehl erstellt einen neuen Commit, der die durch den angegebenen Commit eingeführten Änderungen rückgängig macht. Grundlegende Syntax:

git revert <commit-hash>

Anstatt HEAD (welches den letzten Commit anspricht) zu verwenden, geben Sie den Hash des Commits (Commit-ID) an, den Sie rückgängig machen möchten, indem Sie <commit-hash> durch den tatsächlichen Hash-Wert ersetzen.

Mehr über Hashes

Jeder Commit besitzt eine eindeutige ID — eine 40-stellige hexadezimale Zeichenkette bestehend aus Ziffern (0–9) und Buchstaben (a–f). Dieser Bezeichner wird als Hash bezeichnet. Nun können Sie den neuesten Commit anzeigen:

Der neueste Commit

Hier ist sein Hash:

1b00736255dca7d78659a9971d0c30fba0eb3075

Note
Hinweis

Für diesen Commit wird ein anderer Hash angezeigt, aus dem unten erläuterten Grund.

Der Commit-Hash wird mit dem SHA-1-Algorithmus anhand der folgenden Informationen berechnet:

  • Commit-Nachricht;
  • Datum;
  • Autor;
  • Snapshot des Arbeitsverzeichnisses;
  • Hash des übergeordneten Commits (oder der Commits, wenn es mehr als einen Vorgänger gibt).

Handelt es sich um den ersten Commit im Repository, wird der Hash des übergeordneten Commits offensichtlich nicht berechnet.

Da alle diese Commit-Informationen zur Berechnung des Hashwerts verwendet werden, sorgt die Verwendung von Hashes als Commit-IDs für die Konsistenz des Repositorys. Außerdem ist die Wahrscheinlichkeit, dass zwei verschiedene Commits denselben Hashwert haben (die Wahrscheinlichkeit einer Kollision), extrem gering, sodass dies sehr unwahrscheinlich ist.

Im Grunde genommen ändert sich der Hashwert, sobald sich etwas am Commit ändert. Das bedeutet, dass Git im Falle einer Beschädigung der Daten aus welchem Grund auch immer den Hashwert zur Identifizierung nutzen kann.

Note
Hinweis

Beim Ändern eines Commits ändert sich die Commit-ID, weshalb es besser ist, den Befehl git commit --amend nicht zu verwenden, wenn mit Remote-Repositories gearbeitet wird.

Beispiel-Workflow

Bevor entschieden wird, welcher Commit zurückgesetzt werden soll, die vier letzten Commits anzeigen:

Vier letzte Commits

Es gibt einen Commit, bei dem die Datei recipe.txt hinzugefügt wurde. Revert dieses Commit, um einen neuen Commit zu erstellen, der diese Änderungen rückgängig macht und die Datei effektiv löscht. In diesem Beispiel lautet der Commit-Hash:

043b634d76a7a7744757350512b6367417c29e0

Dein Commit-Hash wird abweichen. Nun diesen Commit revert:

Ersetze diesen Hash durch deinen eigenen Hash.

Git revert

Erneut öffnet sich der Standard-Texteditor mit der Standard-Commit-Nachricht für das Revert. Die Nachricht unverändert lassen.

Standard-Revert-Commit-Nachricht

Schließen Sie anschließend den Texteditor ordnungsgemäß und zeigen Sie die im letzten Commit vorgenommenen Änderungen an:

Der letzte Commit

7 Löschungen wurden durchgeführt, das heißt, alle sieben Zeilen der Datei wurden entfernt. Überprüfen Sie nun, ob die Datei selbst gelöscht wurde, indem Sie alle nicht versteckten Dateien und Verzeichnisse im Projektverzeichnis auflisten:

Auflisten von Dateien und Verzeichnissen

Die Datei recipe.txt wurde erfolgreich gelöscht.

question-icon

Ordnen Sie die Aktionen den jeweiligen Befehlen zu.


Revert the latest commit:

Revert a specific commit:

Unstage changes:

Revert unstaged changes:

Unstage changes and then revert the changes in the working directory:

Overwrite the existing commit:

Click or drag`n`drop items and fill in the blanks

War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 3. Kapitel 5
some-alt