Having used various version control systems over the years (cvs, clearcase, subversion), I have noticed a recent shift to decentralised version control systems (I've only used darcs, but there are a whole heap of others - git, mecurial, svk, bitkeeper). There is a lot of hype surrounding bazaar-ng (http://bazaar-vcs.org/), an open source distributed version control system written in Python, and supported by Canonical (the company behind the Ubuntu Linux distribution). Today I went through the bazaar tutorial and printed myself a compy of the "Bazaar quick start quide" (http://bazaar-vcs.org/Documentation) - it definitely feels like a polished piece of software, and it is extremely easy to get up and running (particularly for someone who is already familiar with svn and darcs). To install and run bazaar-ng (bzr), all you need is Python 2.4 or greater - which automagically makes it cross platform - no need for the glasgow haskall compiler! To add a new project to bazaar version control, it's as simple as:
bzr init myproject
cd myproject
bzr init
bzr add .
bzr commit
You can then use the bzr+ssh protocol to push and pull this repository to other boxes:
bzr pull bzr+ssh://remoteserver/path/to/myproject
cd myproject
bzr co .
You can then start modifying the tree - operations like rm and mv are all supported, you it feels like operating on a standard directory system (no need for fancy commands when creating of removing directories). After making your changes, you can record a revision:
cd myproject
bzr add .
bzr commit
Then you can push it back to the main server (or pull it in):
bzr push bzr+ssh://remoteserver/path/to/myproject
I'm sure that there is plenty of stuff I have missed - but it seems pretty good from my days worth of testing.