Time to Leave Monotone Behind?

John Bailey rekkanoryo at rekkanoryo.org
Sun Jan 16 18:03:27 EST 2011


On 01/15/2011 04:22 PM, Luke Schierer wrote:
>>  * The Adium guys can "fork" our repo and include it in their tree as a
>>    subrepo if they want.  The current Monotone process is painful for
>>    them, and using git would be only slightly less painful due to the
>>    increased speed.
> 
> Most if not all of these advantages are available with git.  I know that John doesn't like git, and his opinion holds more weight than mine a this point, but for what its worth, I prefer git to mercurial. 

For completeness, I thought I'd point out that the section of mine I preserved
above about the Adium guys forking our repo is certainly possible to do with
git.  However, it's more difficult for them, as again they have to use a
different tool just to get their branch/repo of our source.  If we use Mercurial
they get to take advantage of Mercurial's subrepo extension, whereby they can
simply pull in the libpurple repo as a subrepo.

Additionally, I don't know if this has come up in our previous discussions or
not, but in git a branch is nothing more than a floating reference that always
points only to the head/tip of a branch.  In mercurial, a branch is part of the
metadata of a given revision.  In practice this means that once you commit a
revision it's always on that branch.  If you want git-style references you can
achieve it in mercurial with the bookmarks extension.  The bottom line, though,
is that git and hg represent branches entirely differently, and I'd go so far as
to call the git implementation of it as braindead.

One argument in favor of git, however, is that git supports the concept of the
author of a revision and the committer of a revision being two different people.
 Mercurial does not.  If I use 'hg commit -u "some random person"' then there's
no hint that I'm the person who actually committed the revision.  I'm not sure I
see this as a problem, but I imagine one or two people might object to this.

John

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 836 bytes
Desc: OpenPGP digital signature
URL: <http://pidgin.im/pipermail/devel/attachments/20110116/2c7b1d12/attachment.sig>


More information about the Devel mailing list