3方向マージ(diff3)に関する記事を読んだ。衝突の検出方法の例を示します。例がある:それはOA間OB後の差分を算出する第一の時間でgitで奇妙な競合が発生する
A=[1,4,5,2,3,6]
O=[1,2,3,4,5,6] <<< Origin
B=[1,2,4,5,3,6]
:
と
O=[1,2,3,4,5, ,6]
B=[1,2, ,4,5,3,6]
がdiff3 parse
を行った後:
A=[1,4,5,2, 3 ,6] O=[1, ,2, 3,4,5 ,6] <<< Origin B=[1, ,2, 4,5,3 ,6]
そして、それは競合を検出した後:
1
4
5
2
<<<<<<<<<A
3
|||||||O
3
4
5
=======
4
5
3
>>>>>>B
6
競合を検出するには、この方法に続いて、私は簡単な例試す:最初に、私は、ドキュメント持っ を:
a;
b;
を私は更新を行います ユーザー1更新"a;"
〜"a=0;"
ユーザー2更新"b;"
〜"b=0;"
ULT:
xx
<<<<<<< A
int a=0;
int b;
||||||| O
int a;
int b;
=======
int a;
int b=0;
>>>
私は、これら2つの文書をマージすると私は同じ位置(a and b are not at the same position
)で変更しない場合でも、競合を持っています!なぜ私はこの紛争を持っているのですか?
aのエントリはありますか。 b;同じ行の文書にある? – Schleis
いいえ、同じ行にありません! – Mehdi
文書全体が3行だけであれば、おそらくdiffが適切な矛盾を認識するのに十分なコンテキストではないでしょう。 diffが混乱すると、それは矛盾です;) –