Ответ 1
Это крюк обновления, он получает нулевую шагу для новых ссылок, ветки скажут головам не теги
Я хочу подключиться к созданию новой ветки. Либо когда создается ветка, либо когда выполняется первый шаг. Возможно ли одно или оба?
Это крюк обновления, он получает нулевую шагу для новых ссылок, ветки скажут головам не теги
В принятом ответе говорится использовать update hook
. Я не уверен, что это помогает всем, так как это крючок на стороне сервера. Он будет работать, если вы нажмете свою новую ветку, но как насчет ее чистоты?
Я создаю локальные ветки, которые никогда не толкаются, поэтому я использую post-checkout
. После создания своего ветки, вы обычно не проверяете его, прежде чем делать что-либо еще с ним? Когда я обнаруживаю новую ветку, я ее изменяю и добавляю фиксацию автоматически. После этого я могу определить, является ли это новой веткой в кассе, в силу того, имеет ли она историю фиксации.
Вот как я это делаю (мои крючки находятся в bash):
true=1
false=0
isNewBranch()
{
local logQuery=$(git log --all --not $(git rev-list --no-walk --exclude=refs/heads/$(getBranchName) --exclude=HEAD --all))
if [ -z $logQuery ]; then
echo $true
else
echo $false
fi
}
getBranchName()
{
echo $(git rev-parse --abbrev-ref HEAD)
}