Вопросы:
У вас (у них) никогда не было катастрофы, когда вам (им) нужно было вернуться к предыдущей версии веб-сайта, но не могли, потому что они сломали ее?
Используют ли они промежуточный веб-сервер для проверки изменений?
Конечно, они не модифицируют код на производственном сервере без какого-либо тестирования?
Я подозреваю, что ответ на первый вопрос - «да (у них были бедствия)», а на второй - «нет», и я не решаюсь угадать ответ для третьего (но, судя по его звукам, ответ может быть «Да, они действительно делают»). Если это правильно, я восхищаюсь их бравадой и поражаюсь, что они никогда не ошибаются. Я никогда не рискну вносить изменения прямо на веб-сайте.
Я бы рекомендовал использовать систему контроля версий или VCS (любую VCS) самостоятельно. Разработайте складки для кода, за которым вы следите, и разработайте удобный дистрибутив, который облегчает (вероятно, все еще использование SFTP) распространение кода VCS на веб-сайт. Но также покажите, что сохранение предыдущих версий имеет свои достоинства - потому что вы можете узнать, кто что сделал, когда. Для начала вы можете обнаружить, что вам нужно загрузить текущую версию любой страницы (файла), над которой вы хотите работать, и поместить эту последнюю версию в VCS, прежде чем вы начнете изменять страницу, потому что кто-то другой мог изменить ее, так как она последний раз обновлялся в вашем главном репозитории. Вы также можете ежедневно выполнять «очистку» файлов для получения текущих версий и отслеживания изменений. У вас не было бы ни «кто», ни точно «когда» (лучше, чем на ближайший день), ни «почему», но у вас было бы (совокупное) «что» из изменений.
В ответ на комментарии по этому вопросу Олафур Вааге пояснил, что у них произошли бедствия из-за отсутствия VCS.
Это обычно делает жизнь намного проще. Они обманывают; они не могли отменить глупость - они, вероятно, раздражали клиентов, и они должны были быть невероятно раздражены собой. VCS значительно облегчает восстановление после таких ошибок. Очевидно, что для любого настроенного сайта вам нужна (центральная) резервная копия «правильной» или «официальной» версии этого сайта, доступной в VCS. Вероятно, я бы выбрал единый репозиторий для всех клиентов, используя VCS, который имеет хорошую поддержку для ветвления и слияния. Поначалу с этим может быть сложнее иметь дело (в то время как люди привыкли использовать VCS), но, вероятно, это приведет к лучшим результатам в долгосрочной перспективе. Я бы серьезно подумал об использовании одной из современных распределенных VCS (например, git ), хотя многие люди тоже используют SVN (даже если это не распределенная VCS).