CVS только отслеживает модификацию по-файловому, в то время как SVN отслеживает целую фиксацию как новую ревизию, а это означает, что легче следить за историей вашего проекта. Добавьте тот факт, что все современные средства управления версиями используют концепцию пересмотра, поэтому гораздо легче переносить из SVN, чем из CVS.
Существует также проблема атомной фиксации. Хотя я только однажды столкнулся с ним, возможно, что 2 человека, совершающие совместные действия в CVS, могут конфликтовать друг с другом, потерять некоторые данные и поставить своего клиента в противоречивое состояние. Когда они обнаружены на ранней стадии, эти проблемы не важны, потому что ваши данные все еще где-то там, но это может быть боль в стрессовой обстановке.
И, наконец, не так много инструментов разработано вокруг CVS. В то время как новые и блестящие новые инструменты, такие как Git или Mercurial, безусловно, не имеют инструментов, SVN имеет довольно большую базу приложений в любой системе.
EDIT 2015: Серьезно, этот ответ составляет 7 лет. Забудьте о SVN, идите Git, как и все остальные!
Мне нужен тот же ответ для git vs subversion и git vs mercurial – 2017-01-15 20:12:06