2つのプロセスがあるとしましょう。行を追加同じソース(親)ファイルのコピー(copy_A
および)copy_B
。私がdiff
このコピーを持っているならば、diff
私たちの間に紛争があったと結論付けることができますか? (つまり、結論を導き出しcopy_A
て評価できるかどうかcopy_B
同じ行)?
どのプロセスも行を削除しません。次へ追加diff
しかし、(具体的には)彼らが同じ行を編集していると結論付けることができるかどうかを知りたいですgit
(どちらも編集していると結論付ける代わりに)。別の行を追加しました)
私の場合、具体的にはファイルを処理しています(両方のプロセスは独自のファイルのコピーにレコードを追加します。csv
つまり、元のファイルは最初は同じです)。csv
csv
子のマージこれらのcsvファイルは、競合なしに自動的に生成されると予想されます。このような仮定ができますか?
修正する:
どちらのプロセスも次のように仮定します。追加ある時点でトランクにマージしたい独自のブランチの同じファイルに行を追加します。自動的に変更をマージするようにgit(diff)に追加に該当することを知らせる方法はありますか? (おそらくブロックにエントリを追加できます。たとえば、Aへのすべての追加とBへの追加が続きます)
答え1
次の説明に従って、カスタムマージドライバを作成します。gitとデフォルトの追加ファイルの戦略。
これにより、単に追加だけで解決される競合を停止し、ユーザーに解決するように要求するのではなく、ファイルを追加する方法でファイルをマージするように指定できます。