Re: conflict markers on recursive strategy with diff3 enabled
- From
Philip Oakley <philipoakley@iee.email>
- Date
- Oct 28, 2019, 22:13 UTC
- Message-ID
- <e26d24b2-6fca-8546-f2b3-bf4660db8184@iee.email>
- In-Reply-To
- <CAOc6etaQvNChdRZ70xsYQxqtgmZVxaKV9K7_zZeET3JuQ4HEXg@mail.gmail.com>
Hi Edmundo ,
On 25/10/2019 01:13, Edmundo Carmona Antoranz wrote:
Show 23 quoted lines
> Hi! > > I'm sitting down hunting for conflict examples and while looking > through past conflicts in git I found one that has a format that I > hadn't seen before. When merging the parents of 8b79343fc0 we get > this: > > <<<<<<< HEAD > > /* > * Unlink the .pack and associated extension files. > * Does not unlink if 'force_delete' is false and the pack-file is > * marked as ".keep". > */ > extern void unlink_pack_path(const char *pack_name, int force_delete); > ||||||| merged common ancestors >>>>>>>>>> Temporary merge branch 2 > ======= >>>>>>>> 8b79343fc0^2 > That is with merge.conflictStyle set to diff3. What I would like to > know is if the details about how the additional information that is > not normally seen on a conflict has to be interpreted (to be read as > "the part about the temporary branches").
- "Temporary merge branch"
I believe this happens when no merge-base is found between the two lines of development that are being merged, so a fake merge-base is created to allow the regular 3-way merge to occur.
It may be described in the technical section of the Documentation.
Show 8 quoted lines
> I see some explanation about > it in [1] but when checking inside "git help merge" all I see is that > when you are using diff3 you will get the content of the parent but > there's more stuff than just that. Is it documented somewhere? > > Thanks! > > [1]https://stackoverflow.com/questions/31392513/git-diff3-conflict-style-temporary-merge-branch
Philip