SVK
If you’re a Subversion user and have never tried SVK, I strongly advise you to at least give it a shot. In short, its a distributed SVN tool, which allows you to work in a distributed fashion with existing SVN servers (yes, no server side tools needed!). It has strong support for star merging (which is not possible in normal SVN) and patch generation and updating for non-comitters.