Re: [PATCH] merge-recursive: configurable 'merge' program
- From
Johannes Schindelin <johannes.schindelin@gmx.de>
- Date
- Dec 5, 2006, 14:48 UTC
- Message-ID
- <Pine.LNX.4.63.0612051540230.28348@wbgn013.biozentrum.uni-wuerzburg.de>
- In-Reply-To
- <200612051526.12636.jnareb@gmail.com>
Hi,
On Tue, 5 Dec 2006, Jakub Narebski wrote:
Show 5 quoted lines
> Hmmm... is there a way to pass merge.tool / merge.onefile program the > info if it is invoked in final stage (here it is nice to invoke > graphical merge tool to resolve conflicts in working area before > commiting merge result) and in recursive stage (here it would be better > to leave conflict markers to be resolved later)?
In a sense, you get that information: "merge" is called as
$ merge -L new1 -L orig -L new2 fnew1 forig fnew2
where few1 is the filename of the _temporary_ file, and new1 is the name that should be displayed instead. For every but the final stage, new1 begins with "Temporary merge branch".
> Hmmm... would it be possible to use xdl_merge() for recursion, and > graphical merge tool for result? <Checks out earlier discussion>. I > think yes, because of exposing xdl_merge() in git-merge-onefile...
In "next", only git-merge-recursive is converted to use xdl_merge(), and it did not use git-merge-one-file to begin with. Since this is a shell script (with a different syntax than merge), it would have to be converted to a C builtin first. But feasible: git-merge-one-file takes 7 parameters, the first 3 being SHA1s or empty strings. "merge" takes 3 filenames, with possibly up to three "-L <name>" pairs before them.
Ciao, Dscho