comparison with mercurial?
Kevin Smith
yarcs at qualitycode.com
Thu Oct 27 14:22:53 BST 2005
Neal Becker wrote:
> I wonder if there is anything written comparing bzr with mercurial? They
> seem quite similar.
I don't know of any existing direct comparisons. There are several lists
of SCM tools that include capsule summaries of both apps.
Both are in python, both have plugins, both have straightforward
command-line interfaces, and both have strong and friendly communities.
I'm glad to see that bzr has "shelf", to match mercurial's "mq", which
are both similar to "quilt". I'm also happy to see that the bzr
community is starting to develop more tools like friendly web browsing
and desktop GUI app browsing, as the mercurial community has also been
doing.
Generally, mercurial has been a bit more featureful, stable, and
well-documented at any given point in time, but bzr is (hopefully)
nearing a point of stability where it will not be a risky choice.
Mercurial has focused on speed since day one, so is (apparently) much
faster for large projects. Bzr may close the gap, but might not ever
match mercurial for huge projects like the kernel. [I'm a small-project
guy, so I'll leave the speed comparisons to other folks.]
Mercurial tagging is powerful, but unusual. I'm not sure what kind of
tagging bzr will end up with. Bzr is shifting to the "weave" storage
format, which is a leading-edge system that many SCM experts believe
will open the door to superior merging algorithms and capabilities.
Bzr has more formal backing (from Canonical), but the mercurial team is
surprisingly large and strong for such a young project, so even if Matt
left, the project would survive. Bzr seems slightly more committed to
the MS Windows community, although mercurial does run on native MS
Windows too.
My own distributed SCM journey has been: darcs -> monotone -> ArX ->
mercurial -> bzr. For me, bzr wins over mercurial because the bzr team
is committed to:
1. Cheap http-only repo publishing (allowing all developers to be equal
participants regardless of financial status)
2. Centralized storage (allowing cheap branches on older Win98 machines,
and any other non-hardlink filesystem)
Those happen to be VERY important to me, since I'm most interested in
small projects that are global and cross-platform.
Kevin
More information about the bazaar
mailing list