У меня есть репозиторий git (gitosis), где у каждого разработчика есть основная ветка. У меня есть сценарий в хуке после обновления, который перестраивает основной веб-сайт и тестирует веб-сайты для каждого разработчика при каждом PUSH.
Я хочу перестроить только сайт, соответствующий зафиксированной ветке, но не знаю, как определить имя зафиксированной ветки. Может ли кто-нибудь помочь?
Каждый аргумент пост-обновления - это имя ссылки, которая была обновлена нажатием, а ветвь - это ссылка, имя которой выглядит как refs/heads/<branch>
поэтому сценарий, делающий то, что вы хотите, будет выглядеть примерно так:
#!/bin/sh
for ref in "$@"
do
case "$ref" in
refs/heads/*) /path/to/rebuild-site `basename $ref`;;
esac
done