Miklos Vajna <vmiklos@xxxxxxxxxxxxxx> writes: > Move most of the of code from builtin-merge-recursive.c to a new file > merge-recursive.c and introduce merge_recursive_setup() in there so that > builtin-merge-recursive and other builtins call it. > > Signed-off-by: Miklos Vajna <vmiklos@xxxxxxxxxxxxxx> > --- > > On Mon, Aug 11, 2008 at 04:27:01PM -0700, Junio C Hamano <gitster@xxxxxxxxx> wrote: >> (1) move bulk of code from builtin-merge-recursive.c to a new file >> merge-recursive.c and introduce merge_recursive_helper() in there >> so >> that both of you and cmd_merge_recursive() itself can call it; > > Something like this? Hmm, I think callers except "git merge" implementation should not be even using the "recursive" variant, so in that sense, I do not think you would need to expose anything but merge_trees(). But the new file is called merge-recursive.c not merge-trees.c, and in any case, builtin-merge.c needs to link to the recursive one, so this split is Ok. Exposure of make_virtual_commit() somewhat feels dirty, and I tend to agree that the pure "three-tree merge with rename detection" (aka merge_trees()) should operate on three trees, not commits, though. -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html