В настоящее время я - пользователь Mercurial, и он мне действительно нравится. Но у него есть один недостаток: если дерево ревизий является действительно ветвистым, оно становится медленным. Многое из этого сводится к тому, что выбор дизайна был сделан, и, в частности, тот факт, что изменения всегда записываются относительно последнего зафиксированного изменения (а не родительского изменения). Но я все равно остановлюсь на этом.
Для меня сейчас система контроля версий имеет два непременных условия: (1) концепция наборов изменений, поэтому атомарные изменения остаются атомарными; и (2) простое объединение веток без потери информации. По существу, все DVCS имеют это; большинство других VCS не делают. (Perforce подходит близко, но мне всегда мешает, что слияние ветвей не сохраняет последовательность наборов изменений и комментариев из ветви.)
Но если я на собеседовании и потенциальный работодатель скажет мне, что они используют CVS, я уйду из собеседования. (На самом деле, это вопрос, который я обычно задаю на уровне телефонных интервью. Вы можете многое рассказать о компании, какой системой контроля версий они пользуются.)