Imagine typing git 20 times? Well can you see it now? Good.
NOW, imagine typing hg 20 times, that is 60 keys pressed, VS only 40 keys. You'll probably make less errors with 2 keys too.
git didn't bring anything new to version control... with it's 3 key system. svn had 3 letters, cvs even had 3 letters. However hg has brought a 33% improvement to version control -- with it's revolutionary 2 letter system.
Obviously a break through. Obviously fucking cool.
The real reason is that git has Linus behind it, of course, and the fiasco with BitKeeper attracted a lot of attention. This led to tremendous buzz, and then the Ruby / Rails communities* (among others) started spreading and amplifying it. I see tons of blog posts about how git is the best thing ever, and it's a freaking version control system, you know? It's sort of like if people suddenly got singing-and-dancing-in-the-streets excited over a somewhat better version of make, or something. Think about that.
There are other DVCSs that are also quite good (I like Mercurial, for one), but a pretty good version control system can't compete with a pretty good version control system with a tidal wave of hype.
* Also, since the Rails people are themselves working on a popular web development system, they probably had a disproportionately large amount of influence among bloggers in tech circles.
I'd sing and dance for a somewhat better version of make that doesn't end up causing me more problems over time then it solves.
People who wouldn't generally care about something like a VC system are excited about git because Linus is talking it up, I think.
There's been very little progress on these issues as well - both communities seem to be content with relatively small repositories. Sad.
http://www.selenic.com/mercurial/wiki/index.cgi/ForestExtens...
Not sure why there are no docs in the hgforest repository though - that seems like a pretty big oversight.
1. source code
2. toolchain. there are good reasons for it - we had enromous problems with people using outdated toolchains and fighting with obscure compiler bugs. also just installing new toolchain for everyone will not work - it may have new bugs which are only triggered by old code. bottom line is that toolchain must be in sync with the source and it was a painful lesson. I must add that we have dozens if not hundreds of branches.
3. tests. tests must be in sync with the code, and are branched/merged together. a lot of tests.
4. test results. must be in sync with tests and branched/merged together.
So there you have it.
Other people I know who also have large repsitories are art studios who want to version their artwork - they store raw images.
I'm not entirely satisfied with this approach, since it means a brand new developer has to figure out how to pull all the submodules down when setting up his dev environment.
That being said, I've really been enjoying working with Mercurial. I think the biggest shortcoming I feel is not being able to branch (easily?) subdirectories rather than repositories.
> Has mercurial failed?
I'm not sure why you equate hype with success. Anyway, Hg is an awesome tool. I love FreeHg too. I use it to manage my .vim/vimfiles, amongst other things.
Python's only at 6% and Java, C++ and C files combined are only 8% of the total LOC.
Git actually is a nice tool and it's getting quite a bit better, but I prefer mercurial, and I think that it's an easier tool for devs used to SVN to make the switch.
A few weeks ago, I threw together a blog post detailing how I use mercurial (http://naleid.com/blog/2008/11/25/my-mercurial-setup-plus-so...).
There's buzz out there about mercurial, it's just hard to hear over the cacaphony being caused by git.
Is git technically better? I have no idea, git works fine for me, someone will have to get up and point out why Hg is so great before I even try it.
is a Google Tech Talk by one of the main Mercurial developers.
Hg has a better Github which is BitBucket - http://www.bitbucket.org/ .
At least, BitBucket offers at least one private repo for free accounts.
"And no, BitBucket doesn't count just because they ripped off GitHub screen for screen. When they are 30 times bigger and I hear that anyone choose Mercurial over something else because of the community on BitBucket, then I'll reconsider.
Launchpad for Bazaar is closer, but they're still a fraction of the size, nor have I heard of anyone leaning towards Bzr because of the incredible Launchpad community they want to take part in. However, as they are more legitimate, I've removed the 'bzr' flag from this argument."
It could be where you hang out. I heard about Git a lot when I was using Rails, because Rails used it. I hear a lot about Github here on HN, because it's a cool web startup. If you go someplace where Hg is used (and there are some big projects) you see a very different picture.