<https://lh6.googleusercontent.com/-a9h4CUR9vT4/U02BHqqi-8I/AAAAAAAAAAk/Ph7tJEatC4Q/s1600/Screenshot.png>


The poor merge tool (p4merge) is suggesting that I can keep the "BASE" file 
changes or keep the changes from the left or right versions.  But those 
"BASE" file changes are not the BASE file changes instead they are random 
merge annotations erroneously entered into the BASE file.  The merge 
annotations should be and are present in the target file.  

On Tuesday, April 15, 2014 11:28:39 AM UTC-7, Michael Power wrote:
>
> I am merging code from one release to another.  It has some medium level 
> conflicts.  I would be able to sit and resolve them if I could get the 
> merge tools to work correctly.  When I run a mergetool like p4merge, 
> instead of seeing the BASE file as the contents of the file before either 
> changes were made I instead get an annotated file.  This file has the base 
> state plus merge conflict annotations around the conflicting regions.  This 
> destroys any chance of the mergetool being able to present a sensible 
> merge.  I would have to do all the work by hand.  
>
> An example is with a pom.xml file that I am merging.  The path to the 
> parent pom was changed on one side.  The version of the pom was changed on 
> the other.  This should be a trivial conflict to resolve.  In this case the 
> file in questions is /build-tools/pom.xml.  I would expect and I do find 
> merge annotations in this file:
>
> grep -E '(^==)|(^>>)|(^<<)' pom.xml
>>
>> <<<<<<< HEAD
>>
>> =======
>>
>> >>>>>>> ToBisque
>>
>>
> I would not expect to find merge annotations in the base file, but I do:
>
>> grep -E '(^==)|(^>>)|(^<<)' pom.xml.BASE.9944.xml
>
> <<<<<<< Temporary merge branch 1
>
> =======
>
> >>>>>>> Temporary merge branch 2
>
>  
> Now I thought, maybe I made a mistake earlier and committed merge 
> annotations and later removed them.  So I took a look at the actual merge 
> base file:
>
>> git merge-base HEAD ToBisque
>>
>> 4abad03f105d8bd470ef602ad74d5f03123bc3ad
>>
>>
>  
>
> git show 4abad03f105d8bd470ef602ad74d5f03123bc3ad:pom.xml | grep -E 
>> '(^==)|(^>>)|(^<<)'
>
>
> But there are no merge annotations in the file in the repo.
>
> Why am I getting merge annotations in my BASE file, who do I remove it so 
> that my merge tools can provide me a clean diff between LOCAL, REMOTE, and 
> BASE.
>

-- 
You received this message because you are subscribed to the Google Groups "Git 
for human beings" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to git-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to