コンフリクト時、<<<<<<< HEAD と ======= の間にあるのは?
正答
- 現在のブランチ(自分側)の内容
- マージしようとしたブランチ(相手側)の内容
- 両ブランチの共通の祖先の内容
- Git が提案する統合後の内容
解説
マーカーの構造は <<<<<<< HEAD の下に自分側(現在のブランチ)、======= を挟んで、>>>>>>> ブランチ名の上に相手側の内容が並ぶ。共通祖先の内容は既定では表示されず、merge.conflictStyle を diff3 にすると ||||||| の区切りで表示される。Git は統合案を提案しないので、どちらを残すかは人が判断する。上下を取り違えて相手の変更を消してしまうのは典型的なミス。
参考: git-scm.com
この問題を含む Git のテストを制限時間つきで解く
Gitクイズへ