Git Revert Mehrere Commits
-   Verwendung von git revertzum Rückgängigmachen mehrerer Übertragungen in Git
-   Verwenden von git resetzum Zurücksetzen mehrerer Commits in Git
 
 In diesem Tutorial werden wir sehen, wie mehrere Commits in Git zurückgesetzt werden.
In Git haben wir möglicherweise viele Commits für einige Funktionsentwicklungen durchgeführt oder einige Fehlerkorrekturen vorgenommen.
Wir können uns jetzt entscheiden, diese Arbeit einzustellen. Um also das Repository in den Zustand vor diesen Änderungen zurückzubringen, müssen wir die mehrfach durchgeführten Commits rückgängig machen.
Wir können den Befehl git revert verwenden, um mehrere Commits in Git rückgängig zu machen.
Eine andere Möglichkeit, mehrere Commits rückgängig zu machen, ist die Verwendung des Befehls git reset.
Beides wollen wir Ihnen nun an einem Beispiel verdeutlichen.
Verwendung von git revert zum Rückgängigmachen mehrerer Übertragungen in Git
 Angenommen, wir haben mehrere Commits für ein paar Fehlerkorrekturen durchgeführt.
Wir können diese Commits im Protokoll von Git wie folgt sehen.
$ git log --oneline 17b787d bug3 fixed 1fefb57 bug2 fixed 8b3560b bug1 fixed 784065c feature1 developed ... Jetzt entscheiden wir uns, diese Fehlerkorrekturen wegzuwerfen und das Repository auf den Zustand vor dem Zustand bug1 fixed zurückzusetzen.
Daher können wir den Befehl git revert mit der Option --no-commit verwenden. Die Syntax des Befehls lautet git revert --no-commit <commit>.
Um also die drei Commits der durchgeführten Fehlerbehebungen rückgängig zu machen, müssen wir wie folgt vorgehen.
$ git revert --no-commit 17b787d784065c $ git revert --no-commit 1fefb57 $ git revert --no-commit 8b3560b Damit befindet sich das Repository in Git nun im Zustand vor dem Commit des bug1 fixed.
Wir haben den Namen sha1 der Commits verwendet, um jeden Commit rückgängig zu machen.
Wir müssen diesen Zustand des Arbeitsbaums im Git-Repository wie folgt festschreiben.
$ git commit -m "the fixes for bugs 1 2 3 reverted" Verwenden von git reset zum Zurücksetzen mehrerer Commits in Git
 Angenommen, wir haben einige Merge-Commits im Repository. Dann funktioniert die obige Lösung mit dem git revert nicht.
In solchen Fällen müssen wir den Befehl git reset verwenden.
Um also mehrere Commits mit git reset in Git rückgängig zu machen, müssen wir wie folgt vorgehen.
$ git reset --hard 784065c $ git reset --soft ORIG_HEAD $ git commit Daher haben wir den Befehl git reset verwendet, um das Repository auf den Commit zurückzusetzen, d. h. 784065c feature1 developed, das war unmittelbar vor dem ersten Bugfix in der Commit-Historie.
Daher funktioniert dies auch dann, wenn wir einige Merge-Commits haben.
Verwandter Artikel - Git Commit
- Alle Dateien außer einer Datei zum Commit hinzufügen
- Ändern Sie einen bestimmten Commit in Git
- Beenden Sie den Commit-Nachrichteneditor
- Fügen Sie dem letzten Commit in Git eine Datei hinzu
- Git Add und Git Commit in einem Befehl
- git add, git commit und git push in One Command
Verwandter Artikel - Git Reset
- Eine Git-Zusammenführung mit Konflikten rückgängig machen
- Machen Sie den Development-Branch mit dem Master-Branch identisch
- Unterschied zwischen den Git-Befehlen `Reset`, `Revert` und `Checkout`.
- Unterschied zwischen Git RM --Cached und Git Reset File
- Verschiedene Methoden zum Entfernen lokaler Git-Änderungen
- Änderungen in Git rückgängig machen