On Fri, Jun 17, 2011 at 03:37:50PM +0200, Marie E. Rognes wrote: > On 06/17/2011 11:28 AM, Anders Logg wrote: > >If Garth can't be bothered, maybe you could describe a specific > >example that doesn't work? > > > > Everything can be made to work one way or the other, so to say that > it "doesn't work" is not my intention. > > However, I _seem to remember_ the following scenario from a couple > of days ago. > > # Have > bzr branch lp:dolfin trunk
I suggest that instead you do: bzr checkout lp:dolfin trunk > bzr branch trunk rognes This is fine. > # Do work and push to test > cd rognes > <work and commit> > bzr push lp:~dolfin-core/dolfin/rognes This is fine too. I did exactly this now and pushed to dolfin/logg with commit message "Testing append_reivisons_only, commit by logg" > # Wait for buildbots. > # Meanwhile, things happen in dolfin > cd trunk > bzr pull If you have done a checkout, you should instead do: cd trunk bzr update Turns out the timing for this test was good. Garth had just pushed to trunk with the commit message "Clean up for removal of real." > # Want to check whether things still work in rognes > # after additional stuff has happened in dolfin > cd rognes > bzr merge ../trunk (*) > bzr push lp:̃~dolfin-core/dolfin/rognes This is almost correct. Before pushing, you need to do bzr commit -m "merge with trunk" The merge command will change your local files so a commit is necessary. I did this just now (including the commit) and pushed to dolfin/logg. > # Now, I've messed things up, because of (*) No, nothing is messed up. > # Begin pain, especially since I have already done the above No pain. I just did this and it works fine fine fine: cd trunk bzr merge ../work bzr commit -m "Merge some work in logg branch to trunk" Nothing is messed up and there's no pain. The only thing that you people need to do to make this work is: 1. Keep a local bound copy of trunk. 2. Merge your changes into trunk *from that directory* The workflow is the same as before: work in local branches, push/pull to your personal lp branch as much as you want or to a multitude of other branches that you have on different machines, share with your aunt/sister whatever and then just merge that into trunk. The only thing you can't do is push merges made elsewhere into trunk. -- Anders > # What I probably should have done is > > bzr branch trunk trunk_1 > cd trunk_1 > bzr merge ../rognes > bzr push lp:~dolfin-core/dolfin/rognes # Unsure if this works now. > > # If that worked, wait for buildbots to go green. > > # if: best case: nothing has happened in dolfin: > cd trunk > bzr merge ../trunk_1 > bzr push lp:dolfin > > # else: average case: something has happened in dolfin (again) > # Repeat over K until convergence: > cd trunk > bzr pull > bzr branch trunk trunk_K > cd trunk_K > bzr merge ../trunk_K-1 > ... > > # Significant time later: > cd trunk > bzr merge ../trunk_K > bzr push lp:dolfin # win! > _______________________________________________ Mailing list: https://launchpad.net/~dolfin Post to : dolfin@lists.launchpad.net Unsubscribe : https://launchpad.net/~dolfin More help : https://help.launchpad.net/ListHelp