Могу ли я увидеть где-нибудь пример ловушки после фиксации для запуска скрипта для каждого зафиксированного файла?
например.
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 ----------------------------------------------