Subject: Re: Merge format documented?

From: Andreas Gruenbacher <[email-masked]>
Date: Mon, 23 Mar 2009 08:18:19 +0100

On Monday, 23 March 2009 4:50:24 Junio C Hamano wrote:
> Andreas Gruenbacher <[email-masked]> writes:
> > is the format that git normally uses for indicating merge conflicts in
> > files (the <<< === >>> markers) documented somewhere?  How exactly does
> > it differ from the diff3 format (<<< ||| === >>>)?  Diff3's -m mode seems
> > to come close to what git does, except that git doesn't produce the |||
> > section:
>
> It is an imitation of output from "merge" program of RCS suite Paul you
> know maintains ;-)

So it's the same format except that diff3's ||| section isn't shown. I was 
wondering if there are any additional tricks.

Patch should support that too, even from the more limited information it has.

> Recent versions of git supports merge.conflictstyle 
> configuration variable and --conflict option in 'git-checkout' to write
> the conflicts out in a format that is an imitation of "diff3 -m" output.
>
> As far as I know, neither "git" format is documented anywhere, but I
> didn't find an official format specification of the "upstream" formats,
> and that is why I keep saying "imitation" in the above paragraph ;-)

The diff info pages describe the diff3 format; that may be enough 
documentation:

  info -f diff -n "Marking Conflicts"

Thanks,
Andreas