開発・Git・設計の用語一覧へ
このページの目次

mergeとは?

読み方:merge

最終更新:2026/08/18

3秒でわかる

Git で分かれたブランチの変更を合流させるコマンド。それぞれの履歴を残したまま、別々に進めた作業を 1 本にまとめ、衝突した箇所だけを人が直します。

もう少し詳しく

どういうものか

git merge は、別のブランチで進めたコミットを、今いるブランチに取り込む操作です。ファイルをコピーするのではなく、履歴の枝を合流させます。

git switch main git merge feature/login

合流の形は 2 通りあります。main が動いていなければ、先端を進めるだけで済みます。これが fast-forward です。両方が進んでいれば、2 つの親を持つマージコミットが 1 つ作られます。

fast-forward main: A---B → A---B---C---D feat: B---C---D マージコミット main: A---B---E---M feat: B---C---D

なぜ必要か

複数人が同時に別の機能を書くと、履歴は必ず枝分かれします。merge はその枝を、どちらの作業も消さずに戻す手段です。合流の記録がコミットとして残るので、後から「いつ、どの作業が入ったか」を追えます。

つまずきやすいところ

同じ行を両方で編集していると衝突します。Git は自動で決められないので、印を入れた状態で止まります。

<<<<<<< HEAD const price = 520; ======= const price = 540; >>>>>>> feature/login

ここでやることは 3 つです。正しい形に書き直し、印の 3 行を消し、git add してから git commit します。印を消し忘れたままコミットすると、構文エラーのコードが本流に入ります。

もうひとつ、途中でやめたくなったら git merge --abort で merge 前の状態に戻せます。慌てて手で消す必要はありません。

似た用語との違い

コマンド履歴の形
git merge枝が残り、合流点が記録される
git rebase枝を付け替えて 1 本にする。履歴は書き換わる
git cherry-pick特定のコミットだけを持ってくる


共有済みのブランチを rebase すると、他の人が持っている履歴とずれて、後から取り込むときに大量の衝突を招きます。すでに push したブランチへは merge を使うのが基本です。

覚え方

merge は「両方の歴史を残して合流させる」操作です。どちらかを消して片方に合わせたい場面では、そもそも merge ではなく、要らないほうのブランチを捨てる判断のほうが早いこともあります。

知識のつながり

サイドバーと同じ推奨ルート・関連語を、まとめて確認できます。

現在地merge開発・Git

LEARN BY DOING

この用語を、教材で使ってみる

直接関連する編と、その編を含むコースです。用語だけで終わらず、ブラウザ上で実際に手を動かせます。

この用語に直接対応する公開中の編はまだありません。

すべてのコースを見る