Gitのマージとコンフリクト解決方法:初心者向けガイド

2024/07/10
x-logoline-logo

Gitのマージとコンフリクト解決方法:初心者向けガイド

2024/07/10
x-logoline-logo
PR

この記事では、Gitを使ったマージとコンフリクトの解決方法について、説明します。

1. Gitのマージとは?

Gitのマージ(merge)は、別々のブランチ(branch)を一つにまとめる操作です。ブランチとは、プロジェクトの作業ラインで、異なる機能やバグ修正などを並行して進めるために使います。マージを行うと、それぞれのブランチで行った変更を一つのブランチに統合できます。

1.1 ブランチの作成方法

まず、ブランチを作成しましょう。以下のコマンドを使います。以下のコードを入力して、自分の新しいブランチを作成してください。


git branch 新しいブランチ名

1.2 ブランチの切り替え方法

次に、新しいブランチに切り替えます。以下のコマンドを実行します。


git checkout 新しいブランチ名

2. マージの基本的な方法

1.マージを行うには、まず統合したいブランチに切り替えます。その後、git merge マージするブランチ名を実行します。


git checkout main  # mainブランチに切り替える
git merge 新しいブランチ名  # 新しいブランチの変更をmainにマージ

2.1 マージの成功例

マージに成功すると、次のようなメッセージが表示されるでしょう:


Updating 34e91da..5f1e5a9
Fast-forward
  file1.txt           | 2 ++
  file2.txt           | 1 +
  2 files changed, 3 insertions(+)

3. コンフリクトとは?

コンフリクト(衝突)は、同じファイルの同じ部分を異なるブランチで編集したときに発生します。Gitはどちらの変更を適用するべきかがわからないため、手動での解決が必要となります。

3.1 コンフリクトの解決方法

コンフリクトが発生すると、以下のようなメッセージが表示されます:


Auto-merging file1.txt
CONFLICT (content): Merge conflict in file1.txt
Automatic merge failed; fix conflicts and then commit the result.

次に、コンフリクトが発生したファイルを確認し、手動で修正します。ファイルを開くと、コンフリクトがある箇所に次のようなマークが表示されます:


<<<<<<< HEAD
(自分の変更内容) 
=======
(他のブランチの変更内容) 
>>>>>>> 新しいブランチ名

この間の部分を、適切に修正してください。修正が終わったら、以下のコマンドを実行してコンフリクトを解消します。


git add コンフリクトが解消されたファイル
git commit -m "コンフリクトを解決"
この記事はAIを使用して作成されています。
PR