Git hooks en nuestro proyecto

Uno de los problemas que tenia al configurar mi entorno, es que al instalar las herramientas como mi usuario en lugar de root y trabajar con mi usuario, al cambiar de ramas a traves de Git-Svn necesitaba usar “sudo git co branch” y me cambiaba constantemente el usuario y grupo de los ficheros de mi proyecto.

Una forma rapida de solucionarlo sin tener que tocar nada del sistema de usuarios y grupos es usando los “hooks” de git.

Se trata de crear dentro de la carpeta “.git/hooks/” del proyecto un nuevo fichero (en mi caso “post-checkout” con las acciones que queramos. En mi caso contiene lo siguiente:

#!/bin/sh

sudo chown -R david:david .

echo “Se ha cambiado el usuario y grupo a david:david a traves de un hook de Git.”

Despues guardamos los cambios y le damos permisos de ejecucion:

chmod +x .git/hooks/post-checkout

Y a funcionar ¡

Cada checkout que hagamos ejecutara dicho script y nos cambiara los permisos por los que toque sin afectar a nada mas.

Mas información en:

Anuncios