> Тогда git (да и hg тем более) - как раз отвертка валшебная.
> Если надо тоньше - сделаем тоньше, если еще как-то удобнее
> сделать - будет. Это в cvs насадка навсегда одна и
> еще стержень кривой.Да можно, можно всё это в случае с Git, кто ж спорит. Только вы же сами говорите — «если надо — сделаем». То есть — дорабатывать надо. Самый очевидный пример — ниже.
Как это делают в CVS:
cvs up
vi ...
cvs ci
Как это делают в Git:
git pull
git up
vi ...
git ci ...
git push
Можно избавиться от отдельного «git up», поправив конфиг. Можно избавиться от отдельного «git push», добавив commit hook или какую-то ещё свою обёртку. Но и то, и другое — дополнительные усилия, которые не требуются в случае CVS. Никакого волшебства тут нет, только потраченные (или сэкономленные) разработчиком время и усилия.
Если уж за что и хвалить Git из коробки, так это, например, за «add -p» — в случае с CVS я (и не только я) как раз в свою очередь писал обёртку под это дело.
> Ну в самом деле, аналогичная cvs модель работы - никаких специальных усилий
> от мейнтейнера не требует. Наверное, можно даже сказать что львиная
> доля пользователей пользуют именно ее.
Правильно, а почему они её используют? — патамушта Linux и GitHub. Если первой VCS, с которой знакомится эта самая львиная доля пользователей, становится Git, то результат как бы предсказуем (я не в претензии, просто констатирую положение дел). Но масштаб проектов и задачи в них от VCS в целом не меняются. И когда задачи в основном вида «поправить вот эту мелочь» и «добавить вот такую фичу на двести строчек», подойдёт любая VCS, вообще любая. При этом порог вхождения у CVS всё же чуточку меньше — да, в том числе из-за отсутствия каких-то фич, типа git index. Я понимаю, что в глазах многих людей сознательный отказ от фич выглядит, говоря литературным языком, ретроградством, но за ним стоит кое-что большее, чем лень и нежелание учиться. :)