About branching

This is what I usually do when working with branches on a project. I use to keep the main trunk and each release on separate branches, which has proven to be useful for bugfixes.

Right after publishing (and pushing) a new release, create a local checkout for that release:

$ cd /devel/project/releases
$ bzr checkout sftp://bazaar.server/remote/bazaar/repo/project/trunk 1.0

Then create a public repo for it:

$ cd 1.0
$ bzr unbind
$ bzr push sftp://bazaar.server/remote/bazaar/repo/project/relases/1.0

Now you can work on the local release branch and locally commit all your changes. When ready, push the changes to the public repo:

$ bzr merge sftp://bazaar.server/remote/bazaar/repo/project/relases/1.0
$ bzr commit
$ bzr push

Last thing, merge the relase branch changes in the main trunk:

$ cd devel/project/trunk
$ bzr merge sftp://bazaar.server/remote/bazaar/repo/project/relases/1.0
$ bzr commit
$ bzr push

glider [ minitrack ] ikiwiki Creative Commons VIM powered