threads / discuss / 62064

How do git recognize conflicts?

Subject: How do git recognize conflicts?

## tl;dr

4 messages between Sep 5, 2024 and Sep 6, 2024.

replies: 3people: 2as markdown or json

KwonHyun Kim· Sep 5, 2024, 14:10 UTC · lore
 Hi, there.
 At first, I thought it's determined by line.
 But as I experimented, it does not look so.
 Here's what I experimented
 merge-base ====
 hi all
 branch BrA ===
 hi everyone
 branch BrB ===
 hi all
 good to see you
 when I merge BrB from BrA, I get conflicts.
 but the first line is only changed in BrA,
 and BrB added a line so there is no reason to have a conflict...
 that's what i think
 and I wonder the algorithm how git recognizes the conflict... or how
git automerges...
 I searched internet, git documentation but to no avail.
 Thank you in advance
 KwH Kim
Johannes Sixt· Sep 5, 2024, 16:39 UTC · re: KwonHyun Kim · lore

Re: How do git recognize conflicts?

Am 05.09.24 um 16:10 schrieb KwonHyun Kim:
Show 26 quoted lines
>  Hi, there.
> 
>  At first, I thought it's determined by line.
> 
>  But as I experimented, it does not look so.
> 
>  Here's what I experimented
> 
>  merge-base ====
> 
>  hi all
> 
>  branch BrA ===
> 
>  hi everyone
> 
>  branch BrB ===
> 
>  hi all
>  good to see you
> 
>  when I merge BrB from BrA, I get conflicts.
> 
>  but the first line is only changed in BrA,
>  and BrB added a line so there is no reason to have a conflict...
>  that's what i think

If the changes in the two branches are in adjacent lines, then that is considered a conflict as well.

-- Hannes
Johannes Sixt· Sep 6, 2024, 07:03 UTC · lore

Re: How do git recognize conflicts?

Please use "Reply to all" on this mailing list and please do not top-post.
Am 06.09.24 um 07:09 schrieb KwonHyun Kim:
Show 5 quoted lines
>   Thank you for the answer,
> 
>   Is there any other exceptions from line-by-line change?
> 
>   Can I ask you of any reference?

Another "exception" would be a modify-delete conflict, i.e., where one side modifies the file and the other deletes it.

Apart from that, you would have to dig into the source code.
-- Hannes
Show 39 quoted lines
> 
> -- KwH Kim
> 
> 2024년 9월 6일 (금) 오전 1:39, Johannes Sixt <j6t@kdbg.org>님이 작성:
> 
>>
>> Am 05.09.24 um 16:10 schrieb KwonHyun Kim:
>>>  Hi, there.
>>>
>>>  At first, I thought it's determined by line.
>>>
>>>  But as I experimented, it does not look so.
>>>
>>>  Here's what I experimented
>>>
>>>  merge-base ====
>>>
>>>  hi all
>>>
>>>  branch BrA ===
>>>
>>>  hi everyone
>>>
>>>  branch BrB ===
>>>
>>>  hi all
>>>  good to see you
>>>
>>>  when I merge BrB from BrA, I get conflicts.
>>>
>>>  but the first line is only changed in BrA,
>>>  and BrB added a line so there is no reason to have a conflict...
>>>  that's what i think
>>
>> If the changes in the two branches are in adjacent lines, then that is
>> considered a conflict as well.
>>
>> -- Hannes
>>
KwonHyun Kim· Sep 6, 2024, 08:36 UTC · re: Johannes Sixt · lore

Re: How do git recognize conflicts?

  Sure, I am replying to all,
  Anyhow, modify-delete conflict seems to be a legitimate conflict to me...
  How come it is an exception to line-by-line conflicts(conflict only
when the same line is modified by both)?
  In one version some lines are modified and in the other version all
are deleted
  -- KwH Kim
2024년 9월 6일 (금) 오후 4:03, Johannes Sixt <j6t@kdbg.org>님이 작성:
Show 57 quoted lines
>
> Please use "Reply to all" on this mailing list and please do not top-post.
>
> Am 06.09.24 um 07:09 schrieb KwonHyun Kim:
> >   Thank you for the answer,
> >
> >   Is there any other exceptions from line-by-line change?
> >
> >   Can I ask you of any reference?
>
> Another "exception" would be a modify-delete conflict, i.e., where one
> side modifies the file and the other deletes it.
>
> Apart from that, you would have to dig into the source code.
>
> -- Hannes
>
> >
> > -- KwH Kim
> >
> > 2024년 9월 6일 (금) 오전 1:39, Johannes Sixt <j6t@kdbg.org>님이 작성:
> >
> >>
> >> Am 05.09.24 um 16:10 schrieb KwonHyun Kim:
> >>>  Hi, there.
> >>>
> >>>  At first, I thought it's determined by line.
> >>>
> >>>  But as I experimented, it does not look so.
> >>>
> >>>  Here's what I experimented
> >>>
> >>>  merge-base ====
> >>>
> >>>  hi all
> >>>
> >>>  branch BrA ===
> >>>
> >>>  hi everyone
> >>>
> >>>  branch BrB ===
> >>>
> >>>  hi all
> >>>  good to see you
> >>>
> >>>  when I merge BrB from BrA, I get conflicts.
> >>>
> >>>  but the first line is only changed in BrA,
> >>>  and BrB added a line so there is no reason to have a conflict...
> >>>  that's what i think
> >>
> >> If the changes in the two branches are in adjacent lines, then that is
> >> considered a conflict as well.
> >>
> >> -- Hannes
> >>
>

← back to recent threads