gitには分岐した2つのブランチを統合する方法としてmergeとrebaseという2種類のコマンドが用意されています。この時、mergeとrebaseにはどんな違いがあるのか調べてみました。
#mergeの場合
git merge <branch>
・指定したブランチでの変更を現在のブランチに統合。
・新たにマージコミットを作って指定したブランチでの変更を合流させるイメージ。
・指定したブランチのコミットハッシュ値は改変されない。
#rebaseの場合
git rebase <branch>
・指定したブランチの上に現在いるブランチの変更履歴をくっつける。
・分岐していたブランチが一本になりログが見やすくなる。
・rebaseしたブランチのコミットハッシュ値が改変される
rebaseでは、リベースするブランチのコミットのハッシュ値が変更される点に注意が必要です。
#おわりに
履歴をどのように保ちたいのかを意識することによって、ブランチを統合する際にmergeとrebaseどちらを使うべきか判断出来ると思います。両者のコマンドの違いを理解し、状況に応じてうまく使い分けていきましょう。