A little bit of writing by Alejandro

Mercurial is simply too good

It has always bothered me how much our ways of being are based on copying and using what's popular, rather than learning and doing what actually works.

Back in '05 when Linus Torvalds decided to release git for the Linux kernel, a week later mercurial was released with the same purpose. Git was built in a way that you would expect a man like Linus Torvalds would make version control system. Something utterly complex, but absolutely brilliant if you understand everything about its internals. Mercurial was designed instead to be user friendly first and simple enough to to get the job done.

Mercurial most certainly lost to git due to its own simplicity. You can get up and running faster on mercurial than you ever could/can with git. It has very intuitive verb commands that do precisely what you would believe they would do. Mercurial also has extremely powerful search capabilities with revsets expressions. It has built in safeguards, which makes sure you don't shoot yourself in the foot in every command. Mercurial even has its own web server baked in. And that's the problem.

The tool was so correctly designed, it didn't give way for something like github to be required for it to work. You only needed someone with an IP and port, and you can get a running host. Have a team near you? Run hg serve and you can collaborate immediately. No need to sign up to some site now owned by a trillion dollar company. You can just work and do what you need to do. This is precisely the problem. The tool actually solved the problems you needed. So there just simply was no real reason why you would need to spend money on a web host or forge for mercurial.

So now we are all stuck with three options: git (github), git (gitlab), and git (bitbucket). Good job, mercurial. You beat git so well, you kicked yourself out the fight.

However, there is some hope. In recent years, there's been a slow but steady resurgence of the tool. Facebook still very much uses it for their terabyte sized repository. A full rust rewrite of mercurial's internals have been in the works to fully make it just that much better. New hosting forges like heptapod and sourcehut have come into the picture.

Mercurial will probably never reach the heights of git. But for people who want to get their work done, rather than fight with their tool, it will find a nice and sane home.

#Mercurial #Git #100DaysToOffload #Day11