Bazaar User Guide: Workflows

Ian Clatworthy ian.clatworthy at internode.on.net
Thu Mar 27 23:39:27 GMT 2008


Paul Moore wrote:
> On 27/03/2008, Eugene Wee <eugenew at starhub.net.sg> wrote:
>>  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.
> 
> Me too. I would like to see more concrete examples like this in the
> user guide. Specifically, seeing the differing effects on the mainline
> revno is very illuminating.

I've just returned from PyCon and it's amazing how many times I needed
to use that very example to explain Bazaar. Until they see that example,
many existing Git and Mercurial users don't "get" Bazaar - they complain
that it keep breaking their revision numbers and confusing them. After
it, the response was universal: "Ah! I agree - Bazaar's way is better."

I think the underlying reason is one that you guys have been raising a
lot lately: mental model. For Git and Mercurial, the underlying model is
a vanilla DAG and commands map to DAG operations. For Bazaar, the
underlying model is different. Technically, there's a DAG but
conceptually it's more complex that than - a branch only has one head
and the LHS is special.

John Yates send me a really good email some months back with better
wording for explaining 'branch' in Core Concepts. I need to get that
incorporated, together with the example above, soon.

Ian C.



More information about the bazaar mailing list