Thread (3 messages) 3 messages, 3 authors, 2019-10-28

Re: conflict markers on recursive strategy with diff3 enabled

From: Philip Oakley <hidden>
Date: 2019-10-28 22:13:05

Hi Edmundo ,

On 25/10/2019 01:13, Edmundo Carmona Antoranz wrote:
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
quoted
quoted
quoted
quoted
quoted
quoted
quoted
quoted
quoted
Temporary merge branch 2
=======
quoted
quoted
quoted
quoted
quoted
quoted
quoted
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.
  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
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help