Мне нужно проверять каждый коммит, поступающий в GitLab, и блокировать любой из них, в котором есть определенный файл. Я использовал документацию здесь
Я создал файл с именем pre-receive
в каталоге .git/custom_hooks
.
В файле просто содержимое:
#!/bin/sh
exit 1
Что, я считаю, должно отклонять любые попытки отправить код в репо (?)
Файл принадлежит git и является исполняемым:
ls -a
дает ответ:
-rwxrwxrwx 1 git корень 550 ...
Каталог custom_hooks также является исполняемым и принадлежит пользователю git.
Но все коммиты проходят без проблем, хук фиксации, похоже, никак не активируется.
Я не вижу ничего другого в документации, что я должен делать. Я ничего не пропустил?
pre-commit
ловушкой, вы говорите, что установилиpre-receive
ловушку (которая является на стороне сервера ловушкой, срабатывающей на сервере, когда клиент выдаетgit push
), и ваш вопрос предполагает, что вы хотите заблокировать push-уведомления с вашего локального компьютера, что будет играть роль хукаpre-push
. Пожалуйста, проверьте страницу документа об хуках и уточните ваш вопрос -- в частности : можете ли вы объяснить , чего вы хотите добиться ? - person LeGEC   schedule 12.01.2021