[Git] git merge でブランチの変更を取り込む
作成日: 2026年11月05日
git merge を実行すると、指定したブランチのコミットを、現在チェックアウトしているブランチへ取り込めます。別ブランチで進めた変更を、例えば main や master に統合するときなどに利用できます。
別ブランチの変更を取り込む
取り込み先のブランチにいる状態で、マージしたいブランチ名を指定します。
git checkout main
git merge feature
feature の変更が main より先に進んでおり、分岐後に main 側で追加のコミットがない場合は、fast-forward マージとなり、次のようなメッセージが表示されることがあります。
Updating f1b459a..acb4804
Fast-forward
file.txt | 1 +
1 file changed, 1 insertion(+)
すでに取り込み済みのブランチを再度マージしようとすると、Already up to date. と表示され、作業ツリーは変わりません。
マージコミットを残す
分岐後に両方のブランチでコミットがある場合、fast-forward だけでは統合できないことがあります。そのときは --no-ff を付けると、マージ結果を示すマージコミットを明示的に作成できます。
git merge --no-ff feature
リモートの更新を取り込んでからマージする流れでは、git fetch や git pull でリモートの状態を揃えたうえで git merge を実行することもあります。
参考
- Git - git-merge Documentation: https://git-scm.com/docs/git-merge