Я тестую це вдома (~ 3 хости) вже деякий час, пробуючи різні scms (RCS, Subversion, git). Налаштування, яка зараз ідеально працює для мене, - це git with setgitperms
гак.
Що потрібно враховувати:
Обробка дозволів та прав власності на файли
- RCS: робить це споконвічно
- Subversion: останній раз я спробував, вам потрібна обгортка навколо ,
svn
щоб зробити це
- git:
setgitperms
гак обробляє це прозоро ( post-checkout
хоча досить нова версія git із підтримкою гачків)
Крім того, якщо ви не хочете, щоб всі ваші /etc
під контролем версій, а лише ті файли, які ви насправді змінили (як я), вам знадобиться scm, який підтримує подібне використання.
- RCS: так чи інакше працює лише на одних файлах.
- Підрив: Я вважав це хитрим.
- git: немає проблем, поставте "
*
" у .gitignore
файл верхнього рівня та додайте лише ті файли, які ви хочете використовуватиgit add --force
Нарешті, є деякі проблемні каталоги в /etc
яких пакети можуть впасти конфігурації фрагментів, які потім читають який - то програми або демон ( /etc/cron.d
,
/etc/modprobe.d
і т.д.). Деякі з цих програм досить розумні, щоб ігнорувати RCS-файли (наприклад, cron), деякі - (наприклад, modprobe). Те саме і з .svn
каталогами. Знову великий плюс для git (створюється лише один .git
каталог верхнього рівня ).