On Sun, 12 Apr 2009 15:23:02 -0500
King InuYasha <ngompa13(a)gmail.com> wrote:
Aside from Launchpad, not many people actually like
using Bazaar
because it has the worst performance of the three by far.
The performance argument is a quite old one. I certainly wouldn't say
that current bzr is as fast as current git, but I can't say that I've
ever run into any barriers performance-wise with it either. Working
with the MySQL source tree is fairly easy and not at all slow, at least
on my system.
So far, people have recommended like so:
Git - need to be extremely tech savvy, willing to work mostly if not
only in POSIX-based systems, worst documentation of the three
It's documentation isn't bad. There are man pages for every
sub-command of git that I've ever had need to use, though there are
many sub-commands that I have never even looked at (haven't had the
need). I've only ever used it to prepare patches for projects that use
it, though, and its branching model is a bit inflexible for at least
the workflows that I use without wasting tons of disk space.
Mercurial - more complete docs, so easier to learn,
cross-platform,
has good performance with mix of C and Python
At least when I had looked at it, the documentation was pretty
confusing. Admittedly, though, that was a long time ago when I was
comparing bzr, git, hg, and mtn to determine what I wanted to switch to
from svn.
Bazaar - extremely cross platform, very slow compared
to Mercurial
and Git, sparsely documented, or out of date documentation, slightly
strange in syntax, recommended for very small projects where
performance won't matter too much.
At least since I've used it, the docs have always been more than
sufficient. More importantly, I've only ever had to reference the
documentation once or twice---the feel of bzr is pretty intuitive
coming from Subversion, and I've never had a problem with performance.
I frequently use it against Subversion servers, as there are a great
many of those in the areas I work with. Using it with MySQL, Mono, and
MonoDevelop, I've not had any complaints on performance, either.
That was the advice I got when I was figuring out a
DVCS to use for
the Enano CMS Project. Based on that, it was rather easy to throw out
Git and Bazaar.
It would be. I can say that when I checked out the four I listed, it
was a pretty close decision between git and bzr. Bazaar wound up
winning out because my clients used Subversion (many of them have
migrated to Bazaar internally for various reasons) and working with the
Subversion workflow, as well as other less centralized workflows, was
quite easy, and the branching model was rather enjoyable, IMHO. Had
Bazaar not existed at the time, I would've chosen git, more likely than
not. It is more difficult to work with, IMHO, but it was still the
only other option that stood out as viable to me.
A note; I'd checked all of these projects out in mid-2006 or so. A
good lot has changed in both bzr and git in the last 3 years, so I'd
seriously try them all before making a decision. The only one that I
know of that I would _still_ stay away from is mtn, but only because
the cost of cloning is completely terrible and the CL interface is
harder (at least for me) to grasp than git's.
--- Mike