Bazaar Mercurial Plugin to access BitBucket

David Muir davidkmuir at gmail.com
Fri Oct 21 09:51:23 UTC 2011


On 21/10/11 18:26, Stephen J. Turnbull wrote:
> David Muir writes:
>
>  > That's why I brought it up. I consider it one of Mercurial's weak
>  > points. Bazaar IMO has the advantage here as the default is to merge
>  > without fast-forward,
>
> *blink*
>
> You mean you want
>
> 0 --- 1              ? = default
>        \            /
>         `- A --- B-'   = feature
>
> to merge to
>
> 0 --- 1 ------------ 2 = default
>        \            /
>         `- A --- B-'   = feature
>
> instead of
>
> 0 --- 1 --- A --- B   = feature, default
>
> ??  OK, now that you mention it, I can see how that might be useful.
>
> git-merge has a --no-ff (no fast-forward) option, so you're not the
> only one who wants this.

Which is why I was surprised to find that Mercurial does not support
both workflows. When chatting in their IRC channel a while back, the
response I got was "Why would you want to do that?/Looks like a misuse
of the DAG", and then told me off for using git terms...

>
>  > but still has the option of doing `bzr merge --pull` if you want
>  > that behaviour. With Mercurial there is no option to merge instead
>  > of fast-forward, unless you're using named branches,
>
> Ah, so (at the implementation level, i.e., a node can't be on two
> branches at the same time) you like named branches for precisely the
> reason I hate them!<wink>
>

Yes, the graph described above is exactly how I want it, and is how
Bazaar behaves by default. It makes it much easier to see what
changesets/revisions belong to a particular feature and when it was
merged into trunk. I'm a visual person, and I like seeing those merge
commits in qlog ;-)

For me I also find it really useful for issue tracking (Redmine), as I
can clearly see the changesets/revisions affecting deployable code, as I
only include the issue ID when merging into trunk. If the merge
sometimes results in a pull, I need to make sure that every changeset
includes the issue id in the commit message, which means I either have
to remember to include it with every commit, or go back and edit history.

Cheers,
David



More information about the bazaar mailing list