Noe Nieto

Mi sitio personal | Personal site

Sencillo gancho pre-commit de SVN (pre-commit hook)

Implementación mínima de un hook pre-commit de SVN en bash: rechaza el commit si el autor no está listado en trusted_people.txt. Incluye el script completo.

Ganchos :)

El repo de SVN está en:

/var/www/svn-repo/hooks

Necesitas dos archivos:

  • /var/www/svn-repo/hooks/pre-commit
  • /var/www/svn-repo/hooks/trusted_people.txt

El pre-commit queda así:

#!/bin/sh
REPOS="$1"
TXN="$2"
SVNLOOK=/usr/bin/svnlook

D00D=`$SVNLOOK author "$REPOS" -t "$TXN"`
MATCH=`fgrep -c "$D00D" "$REPOS/hooks/trusted_people.txt"`
if [ $MATCH -eq 0 ]; then
    echo "Nel, sáquese de aquí!!" 1>&2
    exit 1;
fi
exit 0

Y trusted_people.txt es un archivo de texto con una lista de nombres, uno por línea.


Créditos:

La foto de los ganchos de ropa es de https://www.flickr.com/photos/13804799@N02/8625204550/

FIN