Hello Bruno, all, * Bruno Haible wrote on Tue, Oct 12, 2010 at 10:03:09PM CEST: > There's also a technical problem: Jim decided that in gnulib's git repository, > merge commits are disallowed. I don't remeember the rationale, but I think it > is a good decision, because > 1. it assigns a clear responsibility to every committer to respect all > previous commits, > 2. it allows to define a natural order of ChangeLog entries in ChangeLog. > As a side effect, it makes topic branches pretty useless. But that's not a > big problem. I can use "git format-patch" followed by "git am" to copy your > commits to HEAD.
I don't do too much gnulib, and I know that getting your head around branched development can take quite a while and can be complex, but I really think disallowing nontrivial merge commits should be reevaluated; it makes you lose out on a big and nice part of the functionality of git, and of distributed development in general. I don't think branched development makes you less responsible, in fact, it makes it much more clear which tree some code has been developed against and where to search for hidden conflicts (those not found by git) in the rare case that there are any. The ChangeLog entry order is found quite nicely by git-merge-changelog, and is fairly uninteresting with 'git log' and other, more informative tools at your fingertips (if you write verbose git log entries, of course). It took me two years to realize that branched development is really adding substantial value to development. I really wouldn't want to go back now. Just my 2 cents, and I will go back to lurking now. ;-) Cheers, Ralf