Skip to content

Instantly share code, notes, and snippets.

@sergeylukin
Created July 25, 2012 10:47
Show Gist options
  • Save sergeylukin/3175508 to your computer and use it in GitHub Desktop.
Save sergeylukin/3175508 to your computer and use it in GitHub Desktop.
Git hook: deny specific branches to be pushed
#!/bin/sh
# <oldrev> <newrev> <refname>
# sanitize pushed branch
while read oldrev newrev ref
do
branch=$(echo $ref | awk -F'/' '{print $3}')
if [ "$branch" != "master" -a "$branch" != "docs" ]
then
echo It is not allowed to push any branch except for master and docs
exit 1
fi
done
@sergeylukin
Copy link
Author

Сорри за поздний ответ, случайно заметил этот коммент проходя по старым гистам. Вы наверное уже разобрались сами в этом вопросе, в любом случае постараюсь ответить. Доступ к хукам гитхаб не предоставляет, но есть поддержка так называемых web hooks. В двух словах - при поступлении новых комитов, webhook отправит HTTP запрос на указанный Вами URL адрес. Это усложняет процесс настройки хуков в специфических случаях, но обычно достаточно интегрировнных в гитхаб сторонних сервисов, которые работают с этой имплементацией.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment