имхо правильный =) выбирал я из CVS и SVN года два назад, щас уже плохо помню, чем CVS не понравился, потому что долго им не пользовался. Точно так же прошерстил электроникс, за SVN голосов больше было =) Типа более поздний проект с исправлением недочетов CVS, база изменений хранится локально, и т.п.
Щас не представляю, как я без системы контроля версий работал раньше. Что кроме очевидных вещей больше всего нравится (возможно что-то подобное есть в большинстве систем, просто не знаю):
- свойство externals для папки в проекте. Допустим в нескольких проектах используется один и тот же код, библиотека, например, тот же tnkernel. Добавляешь папку tnkernel в папку проекта, назначаешь ей это свойство и указываешь адрес хранилища (папки хранилища) из которого ее нужно извлекать. Получается, что когда проект обновляешь, в папку tnkernel извлекается актуальная версия. Опять же - нашел баг, можно на месте изменить, отправить в хранилище - tnkernel обновится автоматом.
- SubWCRev - делает из шаблона файлик, включая туда вместо ключевых слов номер текущей ревизии, дату и т.п. Вообще говоря необходимость возникла только один раз, когда отсылал людям hex-ы, а потом оказалось, что они прошивают старые версии и у них ничего не работает. Попросил прислать то чего они шьют - быстро разобрался.
Ну и понятное дело очевидные моменты (верно для всех систем контроля версий) - если репозиторий не локальный (опять же плюс SVN - репозиторий можно создать в обычной локальной папке - очень помогает осваивать, не надо заморачиваться с установкой серверной части и т.п.), всегда имеешь доступ к проектам и их истории. Понятное дело, можно развивать проект в разных направлениях (ветки), обновление кода ДО ответвления (исправление старого бага) автоматом включается во все ветки. Ясно что групповая работа несомненно упрощается. Ну и т. д. и т. п.
Если нужен сервер с SVN - как вариант
http://www.subversion.ru/billing/
7 баксов в месяц - 500 МБ
За два года я выбрал только 60 МБ. Естественно, не включая никаких бинарных файлов... Сервер упал за два года один раз на сутки (впрочем, тогда у них все упало)
Еще вариант - роутер типа ASUS WL500gP - к нему подключается внешний винт и на него можно поставить SVN сервер. Правда нормально настроить у меня не получилось:
http://wl500g.info …p?t=9583&highlight=SVN
но я думаю, что это по незнанию Linux
Конечно же лучший вариант - установка серверной части на сервере предприятия...