Bazaar User Guide: Workflows

Eugene Wee eugenew at
Thu Mar 27 13:52:12 GMT 2008


Ian Clatworthy wrote:
> Assuming no one else has committed anything, running 'bzr revno' on
> the shared mainline shows 101. In comparison, if 'push' had been run
> directly from the work branch instead of a merge+commmit, 'bzr revno'
> would show 104.

I must say that a light bulb turned on in my head when you gave that
example. Being a university student, I have been using Bazaar since
November 2006 for personal projects, but never had the opportunity to
use it in a team until late last year, when I suggested the "run 'push'
directly from the work branch" approach to my group members. I have seen
the "working branch + mainline checkout" approach before in the
Java-Gnome hacking instructions, but that assumed that bzr bundle would
be used to send the contribution to the maintainer.

> Does that make sense?

Yes, it certainly makes sense, but it also convinces me that the current
section 1.3.6 text is misleading. By using the phrases "bzr branch" and
"bzr commit", it seems obvious that not only is the workflow being
described, but that there is a description of practical use. With no
mention of a checkout, a reader (e.g., myself) may not be able to see
how a commit can possibly go into the main branch instead of the local 
working branch.

Stephen J. Turnbull wrote:
> Note that in VC work, all "true" VC actions incorporate a "commit",
> while to CVS/svn users, commit actually has the semantics of "commit
> + push".  Merge has "update + edit + commit" semantics in the
> workspace while the branch is separate, while it has "update + edit +
> commit + push" semantics at the time of "merge to mainline".

Actually, bzr merge does not incorporate a commit (it is just "update +
edit"). So, from what I understand of Ian's example, the commit to the
main branch comes from committing in the checkout after merging from the
working branch.

Eugene Wee

More information about the bazaar mailing list