Sur certains projets persos, on s'est mis d'accord pour interdire les commits où le code génère des warnings à la compilation.
Voici mon hook git (pre-commit) facilement adaptable (et au passage, si on oublie de faire un add sur un fichier nécessaire pour la compilation, ça empêche le commit) :
#!/bin/sh
#
# to ignore check : --no-verify
against=`git rev-parse --verify HEAD`
# Creation d'un dossier temporaire.
TMPDIR=`mktemp -d`
# On copie le diff dans un fichier patch.
git diff $against > $TMPDIR/current_change.patch
# On copie le HEAD.
git archive $against | tar -x -C $TMPDIR
# on va dans le dossier temporaire pour appliquer le patch.
cd $TMPDIR
git apply current_change.patch
# make depend
make depend
# on compile avec -Werror.
make -j16 WERROR=1
rc=$?
rm -rf $TMPDIR
if [ $rc -ne 0 ]; then
echo "Erreur !"
exit $rc
fi
[^] # Re: Les warnings
Posté par Maxime (site web personnel) . En réponse au journal compiler en c++ pour avoir plus de warnings. Évalué à 9.
Sur certains projets persos, on s'est mis d'accord pour interdire les commits où le code génère des warnings à la compilation.
Voici mon hook git (pre-commit) facilement adaptable (et au passage, si on oublie de faire un add sur un fichier nécessaire pour la compilation, ça empêche le commit) :