Суть проблемы:
- Имеется один сервис, у него имеются конфигурационные файлы;
- Имеется центральный git-репозиторий, в котором хранятся эти файлы;
- Имеется сервер, на котором размещен этот сервис. Репозиторий с конфигом склонирован на него.
Работа с этими конфигами происходят по двум сценариям:
Вариант 1:
- Клонируем центральный репозиторий себе на тачку;
- Редактируем конфиги, коммитим в локальную копию;
- git push в центральный репо;
- Опционально, сдергиваем на тестовый сервак, тестируем;
- Топаем на боевой сервер, делаем git pull с центрального репо.
Вариант 2 (неправильный, но более простой, пригодный для мелких правок):
- Редактируем конфиги прямо на боевом сервере, коммитим в локальную копию;
- git push в центральный репо.
Есть необходимость в подписке на изменения в репозитории, находящемся непосредственно на боевом сервере. Как сделать подписку на изменения по второму варианту (обычный коммит) я разобрался (hooks/post-receive-email), а вот как сделать подписку на изменения, приходящие с git pull?
И сразу туда же: можно ли как-то отправлять не только уведомление, но и дифф?