Zum Inhalt springen
GitTree
Git-Anleitungen5 Min. gelesen

So brechen Sie eine Git-Zusammenführung oder ein Rebase ab

Eine Zusammenführung wurde wegen Konflikten gestoppt und Sie wollen raus. git merge --abort bringt Sie dorthin zurück, wo Sie angefangen haben. Hier ist der richtige Befehl für jeden gestoppten Vorgang, was jeder behält und was zu tun ist, wenn er bereits abgeschlossen ist.

Geschrieben von Kodmora

Das Softwarehaus hinter GitTree

Aktualisiert
  • Zusammenführen
  • Rebase
  • Rückgängigmachen und Wiederherstellen
  • Konflikte zusammenführen
Auf dieser Seite

Um eine laufende Zusammenführung abzubrechen, führen Sie `git merge --abort` aus. Um eine Rebase abzubrechen, führen Sie git rebase --abort aus. Beides bringt Ihren Zweig genau dorthin zurück, wo er war, bevor Sie angefangen haben. Sie funktionieren nur, solange der Betrieb gestoppt ist. Sobald eine Zusammenführung committet ist, gibt es nichts, was abgebrochen werden muss, und Sie benötigen stattdessen git reset oder git revert.

Welcher Befehl bricht welchen Vorgang ab?

Führen Sie zuerst git status aus. Die ersten Zeilen benennen, was gerade ausgeführt wird, und sagen Ihnen, welchen Befehl Sie benötigen:

Der Abbruchbefehl für jeden Vorgang
Was ist in Bearbeitung?Stornieren Sie esMach weiter
Zusammenführengit merge --abortgit commit oder git merge --continue
Rebasegit rebase --abortgit rebase --continue oder --skip
Rosinenpickereigit cherry-pick --abortgit cherry-pick --continue
Zurücksetzengit revert --abortgit revert --continue
Patch von git amgit am --abortgit am --continue

Wie breche ich eine Zusammenführung ab?

git status
# You have unmerged paths.

git merge --abort
git status
# nothing to commit, working tree clean

Dies funktioniert auch nach einem git pull, der aufgrund eines Konflikts gestoppt wurde, da ein Pull ein Abruf gefolgt von einer Zusammenführung ist. Wenn Ihr Pull auf Rebase eingestellt ist, verwenden Sie stattdessen git rebase --abort.

Wie breche ich einen Rebase ab?

git rebase --abort

Der Zweig kehrt dorthin zurück, wo er sich vor Beginn des Rebases befand, auch wenn einige Commits bereits wiederholt wurden. Um die bisher auf einem abgetrennten HEAD wiedergegebenen Commits zu stoppen, aber beizubehalten, verwenden Sie git rebase --quit und entscheiden Sie dann, was Sie behalten möchten. Wenn ein Commit einfach nicht mehr benötigt wird, löscht git rebase --skip es und fährt fort.

Warum sagt Git „Es gibt keine Zusammenführung zum Abbrechen“?

fatal: There is no merge to abort (MERGE_HEAD missing).
  • Die Zusammenführung ist bereits abgeschlossen. Lesen Sie git log -3. Wenn der Merge-Commit vorhanden ist, machen Sie ihn wie unten gezeigt rückgängig.
  • Es ist ein Rebase oder Cherry-Pick. git status benennt die eigentliche Operation. Verwenden Sie den Abbruch aus der Tabelle.
  • Konflikte kamen von `git stash pop`. Das ist keine Zusammenführung. Führen Sie git reset --merge aus, um sie zu löschen. Der Vorrat bleibt erhalten, sodass nichts verloren geht.

Wie mache ich eine bereits abgeschlossene Zusammenführung rückgängig?

Wenn Sie es nicht gepusht haben, verschieben Sie den Zweig zurück. Git speichert die Position vor dem Zusammenführen in ORIG_HEAD:

git reset --hard ORIG_HEAD

Dieser Befehl verwirft nicht committete Änderungen. Überprüfen Sie daher zuerst git status. Wenn Sie es gepusht haben, halten Sie den Verlauf mit einem Revert-Commit intakt, wie unter Wie man einen Merge-Commit zurücksetzt erklärt:

git revert -m 1 <merge-sha>

Wie mache ich einen bereits abgeschlossenen Rebase rückgängig?

Suchen Sie im Reflog nach dem Commit vor dem Rebase und setzen Sie es zurück:

git reflog
# 7c1d9ab HEAD@{4}: rebase (start): checkout main
# 3e52f10 HEAD@{5}: commit: add search box

git reset --hard HEAD@{5}

Wählen Sie den Eintrag direkt vor der Zeile mit der Aufschrift rebase (start) aus. Ein Zurücksetzen, Rebase oder Commit rückgängig machen geht ausführlicher darauf ein.

Soll ich die Konflikte abbrechen oder lösen?

Brechen Sie ab, wenn Sie den falschen Zweig zusammengeführt haben, nicht committete Arbeit hatten oder den Ansatz überdenken möchten. Ein Abbruch kostet nichts und Sie können jederzeit von vorne beginnen. Lösen Sie, wenn es nur wenige Konflikte gibt und Sie beide Seiten verstehen. So lösen Sie Zusammenführungskonflikte zeigt, wie die Markierungen gelesen werden.

So brechen Sie eine Zusammenführung oder ein Rebase in GitTree ab

  1. Lesen Sie das Banner

    Ein Banner über dem Diagramm benennt den Vorgang, z. B. Feature/Suche in Entwicklung zusammenführen, und gibt an, wie viele Konflikte noch bestehen.

  2. Wählen Sie Abbrechen

    Drücken Sie im Banner auf Abbrechen…. Entschließen und Weiter sitzen daneben, wenn Sie Ihre Meinung ändern.

  3. Bestätigen

    Im Dialog Vorgang abbrechen? wird angezeigt, was gelöscht wird. Drücken Sie Abbrechen. GitTree speichert zuerst, was in den Wiederherstellungs-Snapshots abgelegt wird, sodass Rückgängig es wiederherstellen kann.

Abbruch einer gestoppten Zusammenführung in GitTree über das Banner über dem Diagramm.
Abbruch einer gestoppten Zusammenführung in GitTree über das Banner über dem Diagramm.GitTree-Schnittstelle mit einem Demonstrations-Repository.

Siehe Vorgang fortsetzen, überspringen oder abbrechen für jeden Fall und die Lektion Fortfahren, überspringen und abbrechen, um es zu üben.

Häufig gestellte Fragen

Löscht git merge --abort meine Änderungen?

Dadurch werden die Änderungen der Zusammenführung und alle bisher von Ihnen vorgenommenen Konfliktlösungen entfernt. Die Arbeit, die Sie vor der Zusammenführung übernommen haben, ist sicher. Nicht committete Änderungen von vor der Zusammenführung kommen möglicherweise nicht sauber zurück, also vor der Zusammenführung committen oder speichern.

Was ist der Unterschied zwischen git merge --abort und git reset --merge?

git merge --abort ist der normale Ausweg aus einer Zusammenführung und führt git reset --merge für Sie aus, wenn eine Zusammenführung ausgeführt wird. Verwenden Sie git reset --merge direkt, wenn Konflikte von etwas anderem stammen, z. B. git stash pop.

Wie breche ich einen Git-Pull ab?

Ein Pull, der bei Konflikten gestoppt wird, ist eine Zusammenführung oder ein Rebase. Führen Sie git status aus, um zu sehen, welche, und verwenden Sie dann git merge --abort oder git rebase --abort.

Kann ich eine Zusammenführung abbrechen, nachdem einige Konflikte gelöst wurden?

Ja, bis Sie committen. git merge --abort verwirft auch die Auflösungen, sodass Sie bei einer erneuten Zusammenführung von vorne beginnen müssen. Durch das Einschalten von git rerere merkt sich Git sie.

Was macht git rebase --quit?

Es stoppt die Rebase, ohne HEAD zurück zu bewegen, sodass Sie bei den bisher wiederholten Commits bleiben. git rebase --abort ist in fast jedem Fall das, was Sie wollen.

Quellen

Behauptungen zu anderen Produkten wurden anhand der offiziellen Seiten auf 7. November 2026 überprüft. Preise und Ausstattung ändern sich; Die Seiten der Anbieter sind die Quelle der Wahrheit.