Heim  >  Artikel  >  Entwicklungswerkzeuge  >  Der Unterschied zwischen Git Merge und Rebase

Der Unterschied zwischen Git Merge und Rebase

(*-*)浩
(*-*)浩Original
2019-10-22 13:32:529702Durchsuche

Stellen Sie eine Verbindung zum Erstellen und Zusammenführen von Git-Zweigen her. Beim Zusammenführen von Zweigen gibt es zwei Möglichkeiten: Git Merge und Git Rebase.

Der Unterschied zwischen Git Merge und Rebase

git merge: Füge die beiden Zweige zu einer neuen Einreichung zusammen, und die neue Einreichung hat zwei übergeordnete Elemente.

git rebase: bricht jedes Commit im Zweig ab und speichert es vorübergehend, aktualisiert dann den aktuellen Zweig auf den neuesten Ursprungszweig und wendet schließlich alle Commits auf den Zweig an.

git merge

Spezifische Vorgänge: Bob hat 2 Mal in index1.html geändert und es an das Remote-Warehouse übermittelt; Lilei hat 2 Mal in index.html geändert mal und übermitteln Sie es an das Remote-Warehouse; Bob ruft das Remote-Warehouse ab (git fetch origin dev) und führt es zusammen. Die Zweigstruktur ist wie folgt:

Der Unterschied zwischen Git Merge und Rebase

Es ist ersichtlich, dass die beiden Zweige zusammengeführt sind und das 93a6d33-Commit zwei übergeordnete Elemente hat (135b375 und 8b61b04).

git rebase

Spezifische Vorgänge: lilei hat 2 Mal in index.html geändert und es an das Remote-Warehouse übermittelt; Bob hat 2 Mal in index1.html geändert und es übermittelt an das Remote-Warehouse senden, das Remote-Warehouse abrufen (git fetch origin dev), neu basieren und zusammenführen. Die Befehlszeilenausgabe lautet wie folgt:

Der Unterschied zwischen Git Merge und Rebase

Bewegen Sie zunächst den HEAD-Zeiger an den Anfang des aktuellen Ursprungszweigs und wenden Sie dann alle Commits auf den aktuellen Zweig an. Die Zweigstruktur (linear) ist wie folgt:

Der Unterschied zwischen Git Merge und Rebase

Es ist ersichtlich, dass der aktuelle Zweig während der Rebase 191b8cd, 00e08ec und die folgenden beiden Übermittlungen basierend auf dem Common festschreibt Vorfahr von 135b375, insgesamt wurden 4 Einsendungen zurückgezogen. Bewegen Sie dann HEAD, um 322ca9 festzuschreiben, und wenden Sie die 4 Festschreibungen erneut auf den Zweig an.

Das obige ist der detaillierte Inhalt vonDer Unterschied zwischen Git Merge und Rebase. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn