Skip to main content

Bazaar hacking

·2 mins

I spent a little bit of time mucking around with some Bazaar plugin ideas I’ve had.

The first is a command that switches from “branches and trees together inside a shared repository” to “treeless repository with lightweight checkouts”. I ran it against a couple of my local repositories and it works out rather nicely. If you are thinking of using cbranch and the like, you should have a look at this plugin. If you don’t know why it’s a good idea, well, umm, maybe one of the other people on the Planet will blog an answer.

The second adds ‘bzr new’ to the command list.
$ bzr new awesomer

will create a new shared repository called ‘awesomer’ and a new branch in that repository called ’trunk’. If you think trunk is a terrible name, you can do:
$ bzr new awesomer devel

If you are like Tim or Aaron, you’ll want your repository and branches separated from your working tree:
$ bzr –repository ~/repos/foo foo devel

I’d like to figure out a nice way of letting users specify a default directory for repositories to go into, for those people who always use the split model.

The plugin with both of these commands can be found at As the “junk” in the name indicates, it’s really rough code.

If either of these features sound like good ideas to you, let me know!