DVCS choice


It’s a little glib to say I’m using Git, “or Mercurial, I guess” without summarising my pragmatic ambivalence.

As Mercurial’s wiki notes, Git is very similar to Mercurial. Mercurial handles file history differently and Git implements tags differently but, especially after svn and cvs, they’re more alike than not.

Ultimately you need to pick a tool and a lot of significant projects have jumped to one or the other.

For Git, there’s the Eclipse Foundation, Gnome, Maven, Perl, Linux (obviously) and Android. Mercurial has Google Code, Python, OpenSolaris and OpenJDK as well as Mozilla (eventually!).

At a coarse level, Mercurial seems to be a more institutional choice (Fog Creek have based their code management product around Mercurial), with Git preferred by coders and the increasingly impressive Github crowd. People who haven’t used either tend to be a hard sell.

If you write a post, or make a public project decision, favouring one system over the other, it will be included in a list and used as numerical evidence.

There’s no clear winner yet so you’ll need to use at least those two to interact with major projects. I expect interoperability to improve rather than a sudden Blu-Ray-style jump to a single victor, but I’m using both and hg convert seems to do a pretty good job if I need to jump ship either way.

(Music: Smashing Pumpkins, “A Stitch in Time”)
(More from this year, or the front page? [K])