1. ホーム
  2. git

[解決済み] git のマージの衝突で、生成される BACKUP、BASE、LOCAL、REMOTE ファイルは何ですか?

2022-04-27 22:22:16

質問

LOCALとREMOTEファイルはその名の通りだと思いますが、BASEとBACKUPは何のためにあるのでしょうか?

解決方法は?

Git は三方向のマージを行い、マージする二つのブランチの共通の祖先 (別名 "merge base") を見つけます。 このとき git mergetool をコンフリクトの上に置くと、典型的な3ウェイマージツールに送り込むのに適したこれらのファイルが生成されます。 このように

  • foo.LOCAL : 衝突の "ours" 側、すなわち、あなたのブランチ ( HEAD ) のマージ結果を含むことになります。
  • foo.REMOTE : 対立する側のブランチ、つまりマージ先のブランチです。 HEAD
  • foo.BASE 3 者間マージツールへの投入に便利です。
  • foo.BACKUP : マージツールを起動する前のファイルの内容は、以下の場合、ファイルシステム上に保持されます。 mergetool.keepBackup = true .