2011-09-01 17 views
6

¿hay alguna manera para permitir eco en gancho gitGit gancho: habilitar eco comandos

/var/git/repositories/project.git/hooks/post-update 

#!/bin/bash 
unset GIT_DIR; 
echo '========post-update hook=========' 

cd /var/project; 
git reset --hard; 
git checkout testing; 
git pull; 
chmod -R 774 ./lib 

update-apps 

deseada de salida git push en otra automático:

#git push 
... 
Writing objects: 100% (10/10), 5.98 KiB, done. 
Total 10 (delta 3), reused 8 (delta 1) 
========post-update hook========= 
cd /var/project 
git reset --hard 
git checkout testing 
git pull 
chmod -R 774 ./lib 
update-apps 

esto es sólo un ejemplo, la cadena de comando real puede ser más complicado

y fallan en algún lugar

debo redirigir stdout para stderr de alguna manera?

ACTUALIZACIÓN

Actualmente tengo la normalidad git push de salida y luego ========post-update hook========= ... y nada

Oh! La versión de git es 1.5.6.5

+1

¿Pero cuál fue su resultado real cuando lo intentó? –

+1

compruebe que el gancho es ejecutable (chmod + x) – sehe

Respuesta

3

Todos los resultados en stdout o stderr deben reenviarse. Se espera que funcione para todos los ganchos pre-receive, update, post-receive y post-update. Los comandos de eco se activan con set -x en bourne shell.

+0

conjunto -x: solucionado mi problema, gracias – jonny

2

De githooks Manual:

Tanto la salida estándar y la salida de error estándar se remiten a git envía-pack en el otro extremo, por lo que puede simplemente mensajes de eco para el usuario .

Pero había un problema conocido en algunas versiones anteriores de Git y también en la versión anterior de Smart HTTP, por el cual no se enviaba la salida. Actualiza tu versión de git y prueba.

Cuestiones relacionadas