Un git hook può essere utile allo sviluppatore per svariati motivi.

Può essere utile a verificare con i linter la salubrità e la bontà dello stile della propria scrittura.

Può essere utile per effettuare in generale tutte le attività noiose e ripetitive che siamo soliti dimenticarci nel nostro quotidiano: lancio dei test, verificare che il messaggio del commit rispetti la struttura scelta, generazione automatica della documentazione etc.

Gli hooks permettono ad ogni nostro commit di effettuare specifiche azioni da noi decise all’interno della cartella .git/hooks.

Come si possono testare queste soluzioni prima di procedere? Molto semplice:

bash .git/hooks/pre-commit

Per poter rendere funzionante un hook è importante ricordarsi di rendere eseguibile il file in questione.

chmod +x pre-commit

Esempio di un hook

#!/bin/sh

SHA="$(git rev-parse HEAD)"
MSG="$(git log -1 --pretty=%B)"

echo $SHA
echo $MSG

exit 1