No Windows 11. git versão 2.46.0.windows.1
Estou construindo um hook "commit-msg" que deve ser usado para todos os repositórios. Eu construí um aplicativo Go e copiei o executável resultante como %HOME%\.git-templates\hooks\commit-msg.exe
.
Também editei %HOME%\.gitconfig
e adicionei o seguinte no topo do arquivo:
[init]
templatedir = C:\\Users\\<myusername>\\.git-templates
Testei meu aplicativo de forma independente e ele está funcionando bem, sempre imprime pelo menos uma linha indicando o que fez.
Então, fui para um dos meus repositórios locais e executei git init
, então adicionei um arquivo fictício, fiz um git add
nele e então git commit -m "test"
. Ele executou o commit, mas não mostrou a saída do meu hook.
Então copiei meu executável hook para o .git/hooks
subdiretório do meu repositório e repeti o mesmo teste de commit. A saída deixou claro que ele estava executando meu hook.
Por algum motivo, o gancho "global" não está sendo usado, e não sei por quê.