Post Commit Hook Не Работает
мой post commit hook не работает после git. Я проверил, что крюк работает, если я просто запускаю его с терминала. Код в крючке:
#!/bin/sh
#.git/hooks/post-commit
# An example hook script that is called after a successful
# commit is made.
#
# To enable this hook, rename this file to "post-commit".
perl -pi -e 's/([a-f0-9]+)$/'$( git rev-parse HEAD )/ ../../config/commit.git
я переименовал файл в post-commit in ./.git / hooks/ И разрешения -rwxr-x-r-x
поэтому я не уверен, почему это не работает.
3 ответов
попробуйте поставить некоторые Эхо-линии до и после строки perl, как это:
echo "post-commit started"
perl ...........
echo "post-commit finished"
таким образом, вы можете подтвердить, действительно ли скрипт запущен, потому что при запуске
git commit
вы должны увидеть
post-commit started
post-commit finished
к концу вашего выхода.
Я оставлю это здесь в качестве ответа, потому что я наткнулся на свой собственный ответ, когда мой крюк после фиксации не работал:
chmod +x .git/hooks/post-commit
вероятно, относится к любому виду крючка. На самом деле, вероятно, относится к любому виду сценария.
мой скрипт после фиксации не вызывался, потому что:
Я назвал скрипт post-commit.sh
, а не просто post-commit
.
чтобы включить скрипт крючка, поместите файл в подкаталог hooks вашего .каталог git, который имеет соответствующее имя (без расширения)и является исполняемым. С этого момента он должен называться. Мы рассмотрим большинство основных имен файлов hook здесь. см. git-scm
не уверен, почему я был в моя голова, что крючки нуждались в расширении файла bash.
Я тоже не понимаю скрипты крючком не может есть файл расширения.
надеюсь, это кому-то поможет.