On 06/17/2011 08:03 PM, Anders Logg wrote:
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
No thanks.
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.
Yes, I know. I let some commits be implicit in this text, somehow
assuming that you knew that I know how to make a change and commit ;-)
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.
But isn't that exactly what happens in (*) above?
--
Marie
--
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