Extraño conflicto en Git

Leí un artículo sobre fusiones tripartitas (diff3). Da un ejemplo de cómo se detecta un conflicto. El ejemplo es:

A=[1,4,5,2,3,6] O=[1,2,3,4,5,6] <<< Origin B=[1,2,4,5,3,6] 

En la primera vez, calcula la diferencia entre OA y después de OB:

 A=[1,4,5,2,3, ,6] O=[1, ,2,3,4,5,6] 

y

 O=[1,2,3,4,5, ,6] B=[1,2, ,4,5,3,6] 

Después de hacer diff3 parse :

 A=[1,4,5,2, 3 ,6] O=[1, ,2, 3,4,5 ,6] <<< Origin B=[1, ,2, 4,5,3 ,6] 

Y después de que detecta el conflicto:

 1 4 5 2 <<<<<<<<<A 3 |||||||O 3 4 5 ======= 4 5 3 >>>>>>B 6 

Siguiendo este método para detectar el conflicto, bash un ejemplo simple: inicialmente tengo el documento:

 a; b; 

hago una actualización del usuario 1 actualización "a;" , a "a=0;" actualización del usuario 2 "b;" , a "b=0;" Obtengo este resultado:

 xx <<<<<<< A int a=0; int b; ||||||| O int a; int b; ======= int a; int b=0; >>> 

Cuando fusiono estos dos documentos, tengo un conflicto incluso si no cambio en la misma position ( a and b are not at the same position ). alguien me puede explicar por qué tengo este conflicto?

Esta pregunta es muy similar a esta , y la respuesta también es: Esto se debe a que cada punto no solo consta de la diferencia literal, sino también de algunas líneas de context que se requieren para ubicar la diferencia en un file que tiene algunas líneas añadidas / eliminado y por lo tanto los cambios de desplazamiento hunk. Una diferencia en el context también es un conflicto porque dependiendo de qué parche apliques primero estás cambiando el context para el otro parche.