Могу ли я где-нибудь увидеть пример хука после фиксации для запуска скрипта для каждого зафиксированного файла?
eg.
git add file1
git add file2
git commit -am "my commit"
и хук выполняет:
myscript -myparams "file1"
myscript -myparams "file2"
Лучше всего было бы иметь параметр для команды фиксации, запускающей этот хук или нет, например. git commit -X
… выполняет этот хук фиксации сообщения. В конце концов псевдоним вроде git-commitx
.
Как насчет той же версии, что и префикс для файлов в индексе? Могу ли я прервать фиксацию, если выполнение скриптов не выполняется в одном из файлов?
Редактировать:
Вот что у меня есть сейчас:
#!/bin/sh
#.git/hooks/post-commit
dir=`pwd`
echo ----------------------------------------------
echo PHP Mess Detector results for commited files:
echo ----------------------------------------------
git show --pretty="format:" --name-only | grep '\.php$' | xargs -i phpmd $dir/'{}' text codesize,unused$
echo ----------------------------------------------