Mercurial Is My New Favorite VCS


I am starting a new development project where I will do a lot of coding myself, at least initially. There will most probably be times when I have to work offline - perhaps a litte evening coding while at vacation with my family, definitely the days when I am home because the kids cannot be at kindergarten.

So I had this initial thought - can I make a offline copy of the Subversion repository, make changes to it and merge it back when I come online again?

It turns out that there are solutions for doing that - namely SVK and svn-mirror. However, while searching I around I also realized that there had been a revolution in the VCS world, and no one told me.

In the wake of the BitKeeper mishap, it appears that several groups of people found it their mission to create the next great distributed versioning system. These days we have:

These seem to the more prominent ones, but I am sure you can dig up a few that I have missed.

To make a long story short, I have decided to use Mercurial for my next development effort. In fact I am using Mercurial for versioning all my files. It is ridiculously simple to set up versioning for an existing folder (hg init; hg add) so there is simply no reason not to.

To learn more, I recommend reading this, this and this.