git merge 徹底解説|コマンド早見表

目次

git mergeとは?基本知識

git mergeとは、複数のブランチ(分岐)をひとつにまとめる処理のことです。
チーム開発では、同時に複数人が作業を進めます。
別々に進めた作業内容を、最終的には一つに統合しなくてはいけません。

そこで必要になるのが、git mergeという仕組みです。
各自が作業した分岐を「マージ(統合)」することで、作業結果をまとめます。

git mergeを使うことで、以下のメリットがあります。

  • 作業内容が一本化される
  • 作業経過を明確に管理できる
  • 他人の作業を簡単に取り入れられる

git mergeはチーム開発では必須の操作です。
安全で正確にマージをするためにも、基本的な操作をしっかり理解しましょう。

git mergeの基本コマンド

git mergeコマンドの基本的な書式は次の通りです。

git merge ブランチ名

上記のコマンドは、指定したブランチを現在のブランチに統合します。
例えば、「develop」を「master」に統合するとしましょう。
その場合、次の手順で操作を進めます。

git checkout master
git merge develop

また、統合時にメッセージをつける方法もあります。
以下のように「-m」オプションを使えば、作業内容を説明できます。

git merge develop -m "開発内容をmasterに統合"

基本コマンドを覚えることで、日々の作業をスムーズに進められます。
分岐の統合作業を頻繁に行うような環境では、特に便利でしょう。

git mergeの手順と流れ

git mergeの手順は、大きく分けて以下の4つです。

  1. 統合される側のブランチへ移動する
  2. 最新状態を確認し、必要なら更新する
  3. 統合するブランチを指定してマージ実行
  4. 統合結果を確認し、リモートに反映する

具体例を挙げると、「feature」ブランチを「main」に統合する場合の流れは次の通りです。

git checkout main
git pull origin main
git merge feature
git push origin main

git mergeを行う前に、必ず最新の状態を取り込むようにしてください。
古い状態から統合すると、衝突が起こりやすくなります。
作業前に最新化する習慣をつけることで、トラブルの防止につながります。

git mergeで衝突した時の対処

git mergeでは、作業箇所が重なると「コンフリクト」と呼ばれる衝突が発生します。
そのままでは統合できないので、手動での修正が必要です。

コンフリクトが起きた時の解決方法

まず、どのファイルで衝突が起きているかを確認します。

git status

表示された衝突ファイルをエディターで開くと、以下のように表示されます。

<<<<<<< HEAD 現在の分岐の内容 ======= 統合する分岐の内容 >>>>>>> feature-branch

上下の内容を確認し、残したい部分を選んで修正してください。
修正後は変更を追加し、コミットして完了です。

git add ファイル名
git commit -m "コンフリクト修正"

衝突は焦らずに対処すれば解決可能です。
内容をよく確認し、間違いのないように修正しましょう。

git mergeを取り消す方法

git mergeを間違えてしまった場合でも、取り消しが可能です。
統合した直後であれば、次のコマンドで取り消せます。

git merge --abort

ただし、すでにコミットしてしまった場合は、以下の方法で戻します。

git reset --hard HEAD^

resetコマンドを使う際には、注意が必要です。
なぜなら、統合後の作業内容が全て消えてしまうからです。
安全に戻したい場合は「revert」コマンドを使います。

git revert マージコミットのハッシュ値

状況に応じて、適切な方法を選んでください。
間違えても取り戻せますが、慎重な操作を心がけましょう。

git merge履歴を確認する方法

git mergeの履歴を確認することで、統合作業の状況を詳細に把握できます。
履歴を確認するためには、次のコマンドを使用します。

git log --merges

表示内容を見やすくするには、次のコマンドを使いましょう。

git log --oneline --merges
  • 「–merges」で統合履歴のみを表示
  • 「–oneline」で1行表示にする

これにより、過去の統合作業を簡潔に確認できます。
履歴を頻繁に確認することで、作業状況の把握が簡単になります。
特に複数人で開発する際には、積極的に活用しましょう。

git mergeの注意点とコツ

git mergeを使うときには、いくつかの注意点があります。
よくある問題を以下にまとめました。

  • 統合前に必ず最新状態に更新する
  • 統合後は必ず動作確認を行う
  • 衝突が起きたらすぐに修正する

また、git mergeを上手く使うコツは以下の通りです。

  • 小さい単位で頻繁に統合する
  • 作業内容ごとに分岐を分ける
  • 統合前にチームで内容を確認する

注意点を守り、コツを意識することで、トラブルを減らせます。
統合作業は開発の中でも重要なステップです。
作業前には必ずルールを確認しましょう。

git mergeとrebaseの違い

git mergeと混同されやすいのがgit rebaseという仕組みです。
どちらも作業を統合する点では似ています。

しかし、この2つには決定的な違いがあります。

  • git mergeは履歴をそのまま残して統合
  • git rebaseは履歴を整理して統合

git mergeを使うと、全ての履歴が残ります。
rebaseの場合は履歴が直線的に整理されるため、見やすくなります。

一般的には以下の使い分けが推奨されています。

  • チーム開発ではmerge
  • 個人開発ならrebase

違いを理解した上で、場面に応じて使い分けてください。

git merge便利コマンド集

git mergeには便利なオプションが多数用意されています。
特に役立つものを以下に紹介します。

  • 統合時にコミットを作成しない(手動でコミット)
git merge --no-commit ブランチ名
  • 統合時に詳細なログを表示する
git merge --log ブランチ名
  • 高速マージ(fast-forward)を禁止する
git merge --no-ff ブランチ名

これらの便利コマンドを知っておくと、作業効率が向上します。
必要に応じて積極的に活用しましょう。

git mergeコマンド早見表まとめ

最後に、git mergeのコマンドを早見表としてまとめました。

操作内容コマンド
分岐の統合git merge ブランチ名
統合中止git merge --abort
統合履歴確認git log --merges
コミットなし統合git merge --no-commit
高速マージ禁止git merge --no-ff

この表を参考にし、快適にgit mergeを活用してください。

未経験からエンジニアへ転職!おすすめの転職サービスはこちら

「未経験だけどエンジニアになりたい…」「IT業界に興味があるけど、どこから始めるべきかわからない…」
そんな方におすすめなのが、プログラミングスクールを活用した転職活動です。
実績豊富なスクールを利用すれば、未経験からでもエンジニアとしての転職がぐっと近づきます!

この記事が気に入ったら
フォローしてね!

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次