Hacker News new | ask | show | jobs
by dspillett 5050 days ago
Has Linus ever said why he disregarded Darcs and the other OSS options (wasn't Mercurial already starting to get somewhere at that time?).

Other projects not mature enough yet (and/or moving fast enough in that direction) and he wanted something now?

Or some technical points that he disagreed on, so wrote his own solution that worked the way he preferred instead of trying to change the established workings of other projects?

4 comments

Has Linus ever said why he disregarded Darcs and the other OSS options (wasn't Mercurial already starting to get somewhere at that time?).

Here are Linus's comments about Darcs: http://markmail.org/message/vk3gf7ap5auxcxnb

As far as why not Mercurial, Mercurial was announced on April 19th. Git was announced on April 9th, and was self-hosting on April 7th. There were benchmarks comparing git and Mercurial shortly after Mercurial was announced, and git was faster, although at least originally it used much more disk space (this was before git had implemented compression and pack support).

> Has Linus ever said why he disregarded Darcs and the other OSS options (wasn't Mercurial already starting to get somewhere at that time?).

I think you might be thinking of Monotone here. Mercurial was started some days after git.

EDIT: Wikipedia has some info about what Linus thought of Monotone. The key problem with it was performance. I have no idea to what degree they have been fixed today.

https://en.wikipedia.org/wiki/Monotone_%28software%29#Monoto...

You are probably right there, I think I have mixed up Monotone and Mercurial in my chronology.
> wasn't Mercurial already starting to get somewhere at that time?

Git and Mercurial were started within days of one another, for the same reason (loss of BitKeeper license for the kernel devs).

Mercurial was actually announced 2 week after Git (2005-04-19 vs 2005-04-06)

At the time darcs had some serious problems - you could quite reliably get into a "merge of death" situation where the tool would just take ages (hours, days) to do a merge on a relatively small codebase. I don't actually know if that played into his thinking or if he just didn't trust a tool written in a language he wasn't as happy hacking in.