Subject: Re: [VOTE] git versus mercurial (for DragonflyBSD)

From: Arne Babenhauserheide <[email-masked]>
Date: Mon, 27 Oct 2008 01:47:46 +0100

Am Sonntag 26 Oktober 2008 19:55:09 schrieb Jakub Narebski:
> I agree, and I think it is at least partially because of Git having
> cleaner design, even if you have to understand more terms at first.

What do you mean by "cleaner design"? 

From what I see (and in my definition of "design"), Mercurial is designed as 
VCS with very clear and clean design, which even keeps things like streaming 
disk access in mind. 

Also, looking at git, git users still have to garbage collect regularly, which 
shows to me that the design wasn't really cleaner. 

As an example: If I want some revision in hg, my repository just reads the 
files in the store, jumps to the latest snapshots, adds the changes after 
these and has the data. 

In git is has to check all changesets which affect the file. 

If you read the hgbook, you'll find one especially nice comment: 

"Unlike many revision control systems, the concepts upon which Mercurial is 
built are simple enough that it’s easy to understand how the software really 
works. Knowing this certainly isn’t necessary, but I find it useful to have a 
“mental model” of what’s going on."
- http://hgbook.red-bean.com/hgbookch4.html

I really like that, and in my opinion it is a great compliment to hg, for two 
reasons: 

1) Hg is easy to understand
2) You don't have to understand it to use it

And both are indications of a good design, the first of the core, the second 
of the UI. 

Best wishes, 
Arne

-- My stuff: http://draketo.de - stories, songs, poems, programs and stuff :)
-- Infinite Hands: http://infinite-hands.draketo.de - singing a part of the 
history of free software.
-- Ein Würfel System: http://1w6.org - einfach saubere (Rollenspiel-) Regeln.

-- PGP/GnuPG: http://draketo.de/inhalt/ich/pubkey.txt