On Samstag, 5. September 2009, Alan Chandler wrote: > The problem comes when I want to now merge back further work that I did > on the master branch (the 5-6 transition) to the fan club site > > > 2' - 2a - 3' - 4' ----------------- 6' SITE > / / / / > 1 - 2 ------ 3 - 4 ------------6'''- 6a TEST > \ / > 5 ------ 6 MASTER > \ \ > 5''- 5a- 6'' DEMO > > > What will happen is the changes made in 4->5 will get applied to the > (now) Test branch as part of the 6->6'' merge, and I will be left having > to add a new commit, 6a, to undo them all again. Given this is likely > to be quite a substantial change I want to try and avoid it if possible. > > Is there any way I could use git to remember the 4->5 transition, > reverse it and apply it back to the Test branch before hand. Basically, your mistake was to rename master to test and continue development on the demo branch. So what you should do instead is this: 2' - 2a - 3' - 4' ------ 6' SITE / / / / 1 - 2 ------ 3 - 4 ------- 6 MASTER \ \ 5 - 5a - 6'' DEMO IOW, you keep developing on master, and merge that into the two deployment branches. In practice, it may be easier to develop commit 6 on DEMO (because you can debug it more easily, or for similar reasons), but then you should rebase it back to MASTER, reset DEMO back to 5a, and finally merge MASTER into DEMO. -- Hannes -- 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