用語集に戻る
プログラミング基礎上級

コンフリクト

コンフリクト

一言で言うと

同じ箇所の変更が衝突した状態。

もう少し詳しく

一言で言うと

同じ箇所の変更が衝突した状態。

もう少し詳しく

同じ箇所の変更が衝突した状態。IT エンジニアリングの現場で頻繁に登場する概念のひとつで、関連する仕組みやベストプラクティスと合わせて理解しておくと応用が利きます。

Git でマージやリベースを行う際、複数人が同じファイルの同一箇所を別々に変更していると、Gitが自動解決できずコンフリクトが発生します。このとき Git は対象箇所に <<<<<<<(現在のブランチの変更)、=======(区切り)、>>>>>>>>(取り込もうとした変更)のマーカーを挿入します。開発者はマーカーを確認しながら最終的な内容を手動で選択・編集し、マーカーを取り除いてからコミットすることで解消します。

実務でどう使うか

  • チーム開発時 ── 複数人が同じファイルの同一行を変更したとき、Gitがマージを自動解決できずに発生します

  • プルリクエストのレビュー時 ── ベースブランチに先行マージが入った場合、フィーチャーブランチとの間でコンフリクトが起きることがあります

  • リベース時 ── git rebase で履歴を整理する際にも、コミット単位でコンフリクトの解消が必要になります
  • 関連する章

    Ch249 で詳しく学べます。

    関連する用語

    この用語を学べるコース

    この用語を実際に使ってみよう

    チョットデキルなら、5分のレッスンで実際にコードを書いて学べます。

    コース一覧を見る