Я использую GitLab Community Edition 8.2 и хочу добавить хук после фиксации.
Я создал файл path_to_project.git / custom_hooks / post-commit с правами
$ ls -l1 custom_hooks/post-commit
-rwxr-xr-x 1 git git 45 Dec 14 21:31 custom_hooks/post-commit
и содержание
#!/bin/bash
echo "test custom" > /tmp/hook
как описано здесь: http://doc.gitlab.com/ce/hooks/custom_hooks.html
Но это не работает (проверьте, зафиксировав через веб-интерфейс). Я пробовал также «нормальное» размещение хуков git (project.git / hooks / post-commit), но это тоже не сработало.
post-commit
это сторона клиента крючок, и вы не можете реализовать его на сервере.
Согласно документации Gitlab: http://doc.gitlab.com/ce/hooks/custom_hooks.html, вы можете реализовать на стороне сервера кастомный крючок (pre-receive
, post-receive
, and update
) на сервере.
Примеры обработчиков git на стороне сервера включают предварительное получение, последующее получение и обновление. Видеть Серверные хуки Git SCM для получения дополнительной информации о каждом типе крючка.
Если вы хотите настроить ловушку на стороне клиента, вам нужно будет изменить исходный код ловушки или поместить свой собственный скрипт на клиенте под .git/hooks
. Подробнее здесь: Что такое хуки Git?
А вот и все о кастомных хуках: Настройка Git - хуки Git