There are a few adjustments in switching from a svn workflow to a bzr workflow. This page is meant to catalog some of those gotcha’s and help all of us transition.
Most of us are using a distributed workflow process in what bazaar calls the Decentralized with human gatekeeper. The bazaar documenation on workflows explains this process and the various workflows possible with bazaar.
The Bazaar User Guide also has more details.
When you want to push your changes you must specify the shared mainline to push to. The remember flag will make bzr store this location so later you only need $ bzr push:
$ bzr push bzr+ssh://USERNAME@bazaar.launchpad.net/~USERNAME/nipy/trunk-dev --remember
If you get this error when you try to push your changes you need to upload your ssh key to Launchpad. Bazarr has a SSH page explaining some of the details.
Basically you create your public key with ssh-keygen, then login to your launchpad site, click on the Change details link and follow the Update SSH keys link in the menu and upload your key.
You’ve been making changes over several days and want to see what you’ve done before merging with the mainline:
cburns@nipy 12:44:46 $ bzr diff -r submit:
Using parent branch http://bazaar.launchpad.net/%7Enipy-developers/nipy/trunk/
This will print out the log for the last commit. A meaningful commit message helps here:
cburns@nipy 12:44:53 $ bzr log -r last:
Diff between two revision numbers:
cburns@formats 19:53:18 $ bzr diff -r1516..1538 analyze.py
Pipe it into colordiff for colored output:
cburns@formats 19:53:18 $ bzr diff -r1516..1538 analyze.py | colordiff