Git фиксация крючков на каждую ветку
Я работаю над более продвинутым использованием git, и я думаю, что крючки - это то, как я хочу идти, возможно, кто-то может дать мне несколько советов.
Мой план состоит в том, чтобы иметь репозиторий git с тремя ветвями (разработка, постановка и производство). Я хочу зафиксировать каждую из этих трех ветвей, чтобы инициировать другой script пост-фиксацию.
Есть ли у git возможность сделать это, или я лаяю неправильное дерево?
Спасибо заранее.
Ответы
Ответ 1
в случае фиксации после фиксации вы можете сделать следующее:
if [ `git rev-parse --abbrev-ref HEAD` == "development" ]; then
echo "development-script"
elif [ `git rev-parse --abbrev-ref HEAD` == "staging" ]; then
echo "staging-script"
elif [ `git rev-parse --abbrev-ref HEAD` == "production" ]; then
echo "production-script"
fi
Ответ 2
Я написал script для себя, чтобы сделать эту функциональность.
https://github.com/fotuzlab/githubdump-php
Соберите этот файл на своем сервере, предпочтительно root репо и определите URL-адрес в веб-узлах github. Измените "allcommits" в строке 8 с именем вашей ветки и добавьте код/функцию в строку 18.
Вам понадобятся отдельные файлы и веб-узлы для всех ваших трех экземпляров.
Надеюсь, это поможет!