Jak zastosować hak po stronie klienta do wszystkich lokalnych repozytoriów w git?
Tworzę przechwycenie commit-msgmyrepo/.git/hooks
.
#!/bin/sh
message=`cat $1`
c=`echo $message|grep -c 'fff'`
if[ $c -gt 0 ];then
echo "Error"
exit 1
fi
exit 0
Gdy próbuję zatwierdzić w ten sposób, pojawia się błąd i blokuje zatwierdzenie.
$ git commit -m "reffrffffeffff fffeef"
Error
Następnie wykonuję następujące czynności:
$ cd myrepo
$ mkdir .hooks
$ mv .git/hooks/commit-msg .hooks/commit-msg
$ ln -s .hooks/commit-msg .git/hooks/commit-msg
i spróbuj ponownie popełnić ten sam komunikat. Zatwierdzenie powiedzie się. Myślę, że mogłem zrobić coś złego w powyższych krokach?
Czy ktoś może mi powiedzieć, jak zrobić hak po stronie klienta i czy każdy programista ma ograniczenia z tego haka?