simple version control

I’ve been playing with Mercurial today as a replacement to Subversion, as part of a big effort to clean my stuff off 3 different servers I don’t really use anymore. My first thoughts are mostly good - local storage is a bit cleaner than CVS or Subversion, with only a .hg folder in the root folder of the repository. I’ll be interested to see how simple it is to use mercurial with modules like I used to with CVS - a quick attempt left me confused as to how you can export part of a repository without pulling down the whole thing.

One thing that I was particularly impressed with was how easy it is to use mercurial for version control locally. If you’re not interested in using an external server, it’s as simple as running hg init in the folder you want to version control to initialise the mercurial repository, then running hg add * and then hg commit. It’s all self contained, so you don’t end up with a separate repository somewhere else like CVS used to enforce, and cloning the repository to another machine is also pretty simple.