У меня есть репозиторий CENTRAL, который имеет три хранилища репозитория, которые тянут и подталкивают к нему в обычном режиме.
У меня также есть два других репозитория, которые выходят из CENTRAL bare repo: один - это живой сервер, а другой - тестовый/этапный сервер, каждый из которых вытягивается из своей собственной ветки.
Сценарий таков: у CENTRAL repo есть post-update
hook script, который автоматически обращается к тестовому и live-репозиторию и запускает команду pull для каждого из них. Это обновляет тестовые и живые серверы, все в зависимости от того, какая ветка имеет новые фиксации. Все это отлично работает.
Проблема заключается в следующем: в экстренной ситуации могут быть случаи, когда файлы могут быть напрямую обновлены на сервере (через ftp или что-то еще), а CENTRAL post-update script будет терпеть неудачу, так как конфликты слияния/перезаписывания будут возникать. Невозможно избежать этого сценария, и это неизбежно.
Я бы хотел, чтобы это произошло: я хочу, чтобы вытащить из живых и тестовых сайтов, чтобы всегда переписывать/сжимать при нажатии. Всегда. Эти репозитории будут доступны только для загрузки, поскольку они не предназначены для разработки.
Во всех моих исследованиях я не могу найти хорошее решение, чтобы заставить pull всегда заставлять перезаписывать локальные файлы. Это вообще возможно? Если это так, это создаст отличный сценарий развития.