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