ホームページ >開発ツール >Git >git merge と rebase の違い

git merge と rebase の違い

(*-*)浩
(*-*)浩オリジナル
2019-10-22 13:32:529796ブラウズ

Git ブランチの作成とマージに接続する ブランチをマージする場合、git merge と git rebase の 2 つの方法があります。

git merge と rebase の違い

git merge: 2 つのブランチをマージして新しい送信に送信します。新しい送信には 2 つの親があります。

git rebase: ブランチ内の各送信をキャンセルして一時的に保存し、次に現在のブランチを最新の元のブランチに更新し、最後にすべての送信をブランチに適用します。

git merge

特定の操作: bob は、index1.html で 2 回変更し、リモート ウェアハウスに送信しました。lilei は、index.html で 2 回変更しました。回それをリモート ウェアハウスに送信すると、ボブはリモート ウェアハウス (git fetchorigin dev) をプルしてマージします。ブランチ構造は次のとおりです。

git merge と rebase の違い

2 つのブランチがマージされており、93a6d33 コミットには 2 つの親 (135b375 と 8b61b04) があることがわかります。

git rebase

特定の操作: lilei は、index.html を 2 回変更して、リモート ウェアハウスに送信しました。bob は、index1.html を 2 回変更して、送信しました。リモート ウェアハウスに送信し、リモート ウェアハウス (git fetchorigin dev) をプルし、リベースしてマージします。コマンド ラインの出力は次のとおりです。

git merge と rebase の違い

まず HEAD ポインターを現在の元のブランチの先頭に移動し、次にすべてのコミットを現在のブランチに適用します。ブランチ構造 (直線) は次のとおりです:

git merge と rebase の違い

リベース中に、現在のブランチが 191b8cd、00e08ec と次の 2 つの送信に基づいてコミットすることがわかります。 135b375 の共通の祖先に関しては、合計 4 件の申請が取り下げられました。次に、HEAD をコミット 322ca9 に移動し、4 つのコミットをブランチに再適用します。

以上がgit merge と rebase の違いの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。