Colocated Branches in Bazaar
Depending on your workflow preference you may like the ability to only have one copy of the source tree which can be bound to arbitrary branches. While the ability to do this has been in bzr for a while, there is not a particularly wonderful UI for it. It can be accomplished using only stock bzr commands as it is, but requires a little bit of extra effort.
At the moment, the best way seems to be to use the colo-plugin... which just wraps up some current best practices and puts them behind some easy to use commands.
To install it:
mkdir -p ~/.bazaar/plugins bzr branch lp:bzr-colo ~/.bazaar/plugins/colo
To turn a branch into a colo branch location, from within the branch:
At that point, you can use:
to see the available branches,
bzr colo-branch foo
to make a new foo branch in the current colocated setup. And
bzr switch colo:foo
to switch to a branch named foo in your current setup.
More information can be found here: http://doc.bazaar.canonical.com/plugins/en/colo-plugin.html