Что вы, ребята, используете для развертывания и приложения и отслеживания их файлов на производстве? Я имею в виду отслеживание, если файл не был изменен непосредственно на сервере?
спасибо
Ответ 1
Я использую Git в течение 3 лет для отслеживания /usr/local в производственном кластере HPC.
Для 2.2G (в основном двоичных файлов) требуется 1 минута git log -n 1; git status (через NFS!), чтобы убедить себя, что после развертывания файлы не были изменены. На локальном диске сканирование займет несколько секунд. Если изменения произошли, я вижу, какие файлы и diff (если он не двоичный).
Ответ 2
I не будет отслеживать эти файлы через VCS на сервере.
Обычно (за исключением простого развертывания webapp) у вас нет никакого "ненужного" инструмента на производственном сервере за теми, которые вам действительно нужны для запуска приложения (т.е.: конечно, не VCS).
Система контроля версий находится до рабочей среды, чтобы вы могли развернуть определенный тег.
Но как только этот тег используется для получения ваших файлов, происходит процесс развертывания:
замените переменные из ваших общих файлов конфигурации значениями, специфичными для производства
остановить производственные процессы
копировать и разворачивать файлы на производственный сервер
перезагрузка
монитор...
Итак, я бы установил внешнее (т.е. не управляемое напрямую VCS) задание для сравнения файла с версией и соответствующего развернутого файла.