Я слышал много о преимуществах использования системы контроля версий и хотел бы попробовать ее. Я занимался внештатным веб-разработкой в PHP за последние 2 года, два месяца назад я нанял еще двух программистов, чтобы помочь мне. В ближайшее время я найму еще одного человека. Мы поддерживаем 4 веб-сайта, все из которых являются моими, которые постоянно редактируются одним из нас. Я сам изучил PHP и никогда не работал ни в каких других фирмах. Поэтому я новичок в управлении версиями, модульном тестировании и всем.
В настоящее время у нас есть серверы разработки на наших рабочих станциях. Когда мы редактируем конкретный раздел сайта, мы загружаем код для этого конкретного раздела (например,/news/or/movies/or/wallpapers/) с производственного сервера на dev-сервер, локально меняем его и загружаем в производство сервер (без проверки/тестирования кода). Из-за этого наш сервер-разработчик всегда устарел от нашего prod-сервера. Иногда это также создает проблему, когда один из нас забывает загрузить последнюю копию из prod и перезаписывает последнее изменение. Я знаю, что это очень глупо, но в настоящее время наш prod-сервер является единственной копией, в которой есть все обновления и последние изменения.
Кто-нибудь может предложить, какая из них лучшая система контроля версий? Меня больше интересует распределенный контроль версий, поскольку у нас нет центральной резервной копии для всего нашего кода. Я прочитал о Mercurial и Git и обнаружил, что Mercurial используется в нескольких крупных проектах с открытым исходным кодом Mozilla, Sun, Symbian и т.д. Итак, какой из них, по-вашему, лучше для меня? Не только контроль версий, если есть какой-либо другой пакет, который я могу использовать для улучшения моей текущей настройки, пожалуйста, опишите это тоже:)