Ignorar gancho post-commit temporariamente

Eu tenho um script de teste, que precisa confirmar as alterações antes de executar os testes e, em seguida, reverte esse commit. Então, eu não quero que esse falso commit chame o post-commit hook, o que pode fazer algo que não será restaurado revertendo o commit.

Existe uma opção para ignorar o gancho de pré-confirmação:, git commit --no-verify ...mas não encontrei nada semelhante para o pós-confirmação. Aqui está um pedaço do meu script, com solução simples para o problema:

gitdir="$(git rev-parse --git-dir)"
hook
="$gitdir/hooks/post-commit"

# disable post-commit hook temporarily
[ -x $hook ] && chmod -x $hook

git commit
-a -m "Commit all changes for testing. Will be reverted automatically"

# enable it again
chmod
+x $hook

Nós apenas tornamos o gancho não executável para este commit e pronto!

A ideia é tirada daqui