Консультация по системе управления версиями для веб проекта
Есть веб проект (сайт) написанный на php, над которым, до недавнего времени, работал только 1 человек. В связи с развитием проекта и аутсорсинге части заданий встал вопрос о правильной организации работы, в частности, системы управлениями версиями.
Сам проект состоит из рабочего сайта (продакшен) и тестового сайта. Собственно хотелось бы получиить консультацию по следующим вопросам:
1. Как организовать репозиторий для совместной разработки?
2. Как сделать выгрузку кода на рабочий сайт. Тестовый и рабочий сайт могут иметь различия в коде (например, другие конфигурационые файлы).
3. Как выкладывать быстрые патчи на рабочий сайт?
4. Управление доступом для разных юзеров.
5. Удаление старого и ненужного кода из репозитариев.
6. Управление подпроектами или использование отдельных репозитариев.
Есть небольшой опыт работы с subversion, хотя возможно использование и других систем.
Хочется получить консультацию по вышеперечисленным вопросам, а так же, возможно, помощь в конфигурировании системы на серверах под управлением CentOS.