0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

コンフリクトの解決方法

0
Last updated at Posted at 2026-05-13

コンフリクトとは?

チーム開発では、複数の開発者が同じコードベースを編集することが一般的です。この際、異なる変更が同じファイルの同じ箇所に加えられると「コンフリクト(衝突)」が発生します。コンフリクトは、Gitなどのバージョン管理システムが自動的に変更を統合できない場合に起こります。本研修では、それぞれが別のところを担当するケースが多いためほとんど起きないとは思いますが、万が一のために解決方法を知っておくと良いでしょう。


コンフリクトが発生する例

以下は、コンフリクトが発生する典型的な例です:

  1. 開発者Amainブランチから新しいブランチを作成し、コードを編集してプッシュ。
  2. 開発者Bも同じ箇所を編集し、mainブランチに変更をマージ。
  3. 開発者Aが自分の変更をmainにマージしようとすると、コンフリクトが発生。

コンフリクトの解決手順

  1. コンフリクトの確認
    コンフリクトが発生すると、Gitは該当するファイルをマークします。git statusコマンドで確認できます。

  2. 該当ファイルを編集
    コンフリクト箇所は以下のように表示されます:

    <<<<<<< HEAD
    現在のブランチの変更
    =======
    他のブランチの変更
    >>>>>>> branch-name
    

    HEAD部分が現在のブランチの変更、branch-name部分が他のブランチの変更です。

  3. より良いコードを選ぶ

    • コードの意図を理解する:どちらの変更がプロジェクトの目的に合致しているかを考えます。
    • チームと相談:不明点があれば、変更を加えた開発者に確認します。
    • 統合する:必要に応じて、両方の変更を組み合わせることも可能です。
  4. 解決後の確認
    コンフリクトを解消したら、ファイルを保存し、以下のコマンドを実行します:

    git add <ファイル名>
    git commit
    

コンフリクトを防ぐためのコツ

  • 頻繁にプルするgit pullを定期的に実行し、最新の変更を取り込む。
  • 小さな変更を心がける:大きな変更はコンフリクトのリスクを高めます。
  • チームでのコミュニケーション:誰がどの部分を編集しているかを共有する。

まとめ

コンフリクトはチーム開発では避けられないものですが、適切に対処することでプロジェクトの品質を保つことができます。コンフリクト解消のスキルを磨き、チームで効率的に開発を進めましょう!

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?