In his last article, Joel talks how DVCS confused him and how he solved the problem. One sentence in particular should be noted:
these systems think in terms of changes, not in terms of versions.
Still confused? Read his HgInit tutorial to get you up to speed with Mercurial (or any other DVCS because they are all pretty similar at that level).
PS: I prefer Mercurial to Git for
1. I need a working DCVS, not a toolbox to build one. I prefer it when a smart guy has given all the hidden issues some thought, so I don’t have to.
2. There is a simple, working Windows installer.
3. It’s written in Python.