Note: This document is work-in-progress. Please don’t publish it on news sites, or otherwise link to it in public without the author’s permission. Private linking is acceptable.
A good team should have a good version control server and clients available to every developer. I originally started the “Better SCM” site as a way to concentrate the material for the various alternative available, after I realised CVS has become inadequate for most needs.
My rule of the thumb for choosing a version control system is the following: “When in doubt - use Subversion”. See Ben Collins-Sussman’s article “Version Control and ‘the 80%’” for some of the motivation for this statement. Another one is that from my impression most of the new breed “Distributed Version Control Systems” tend to have catches for the unwary and other things that don’t exactly work as expected, and sometimes have poor portability to Microsoft Windows - a fact which is often a deal-breaker.