hoi :) On Sun, May 06, 2007 at 03:18:53PM -0700, Linus Torvalds wrote: > On Mon, 7 May 2007, Alex Riesen wrote: > > merge-recursive is a mess already, you just made even more so. > > Besides, you completely forgot all other merge strategies. > > > > How about making all existing strategies just ignore submodules, and > > move recursive merge in the merge driver (git-merge.sh)? > > Yes, I think that's the right thing to do. > > I think it's the right thing for another reason: in a true "recursive" > merge, the submodules shouldn't be recursively merged anyway. *THEIR* > merge will have its own history, and doing it based on some random history > of the superproject is actually wrong anyway! Of course the submodule has to get its own history, it's not possible to do otherwise. But you have to trigger the submodule merge when you find a submodule-level conflict in the supermodule merge, just as you trigger file-level three-way merges, too. This is really all which my patch does -- it starts a new instance of the merge driver which only merges the submodule commit from the other supermodule tree. So it's not recursive in the merge-recursive way, but in a call-git-merge-again way. The comment about merge-recursive not being the best place is correct of course. -- Martin Waitz
Attachment:
signature.asc
Description: Digital signature