On 03/07/2012 04:00 PM, Peter Rosin wrote: > Peter Rosin skrev 2012-03-07 14:08: >> Do you think it would be at all possible to start with a msvc and maint >> that is freshly merged into both master and branch-1.11. Then merge msvc >> into maint in such a way that maint resembles branch-1.11, then do dummy >> merges of maint into master and branch-1.11. I.e. for the master case: >> git checkout master; git merge --strategy=ours maint >> and similar for branch-1.11. And then, finally, get rid of the obnoxious >> msvc branch... >> >> After that, we should be able to go back to the old simple rule of only >> updating the scripts on maint. > > I tried, and it looks good, methinks. > To me as well, but with an important nit below.
> I did this: > > git checkout maint > git merge --no-ff msvc > git diff maint branch-1.11 HACKING | patch -p1 > git diff maint branch-1.11 lib/Automake/ChannelDefs.pm | patch -p1 > git diff maint branch-1.11 tests/ar-lib3.test | patch -p1 > git diff maint branch-1.11 tests/ar-lib4.test | patch -p1 > git diff maint branch-1.11 tests/extra-portability.test | patch -p1 > git diff maint branch-1.11 tests/extra-portability2.test | patch -p1 > git diff maint branch-1.11 tests/extradep.test | patch -p1 > git diff maint branch-1.11 tests/extradep2.test | patch -p1 > git diff maint branch-1.11 tests/list-of-tests.mk | patch -p1 > git add HACKING > git add lib/Automake/ChannelDefs.pm > git add tests/ar-lib3.test > git add tests/ar-lib4.test > git add tests/extra-portability.test > git add tests/extra-portability2.test > git add tests/extradep.test > git add tests/extradep2.test > git add tests/list-of-tests.mk > git commit --amend -C HEAD > This commit message won't be nearly good enough, unfortunately. I think that, for the sake of the future readers of the history, you should give a detailed and motivated explanation of why this merge is needed. Hopefully, you might be able to condense it from our past (and present) discussion. In particular, you should explain: - why the msvc merged into branch-1.11 and the one merged into master have diverged (that issue about backward-compatibility for new warnings); - that the decision to merge msvc into branch-1.11, rather than into maint, has been a bad call (in hindsight); - that the merge you're doing, while complicating the history, will help us to simplify our workflow and get rid of a messy situation that is truly hindering development; - any other pertinent rationale, fact and/or explanation you can think of. Could you try to write such a commit message, and post if for review before pushing? Otherwise, I'll try to do so myself -- but I strongly believe that having such a "merge message", either from you or from me, is a necessary prerequisite for pushing these changes. > git checkout branch-1.11 > git merge --strategy=ours maint > git checkout master > git merge --strategy=ours maint > > I think I'd like to push that. Ok? > OK once the above concerns have been addressed. Thanks, Stefano