Tengo un script, que necesito ejecutar después de comprometerme con un proyecto bajo control de revisión git. Por lo tanto, he creado un gancho post-commit en mis proyectos .git directorio en el subdirectorio/ganchos, la llamaron 'post-commit' y le dio el siguiente contenido:Git enganche post-commit como tarea en segundo plano
#!/bin/sh
# I am a post-commit hook
/usr/local/bin/my_script &
my_script es ejecutable y funciona muy bien en/bin/sh. De hecho, tiene un tiempo de ejecución de varios segundos, por lo que quiero que esté en segundo plano y separado del shell actual. Es por eso que puse el final '&' en mi gancho.
El problema ahora es que el '&' parece ignorado. Cuando me comprometo a usar gitx 0.7.1 bajo OSX Lion, gitx se cuelga durante exactamente el período que my_script necesita ejecutarse.
He intentado mucho, pero no consigo el proceso en sí mismo en segundo plano.
¿Qué pasa aquí?
David, mientras tanto encontré un enfoque similar: nohup/usr/local/bin/my_script 2> & 1>/dev/null & – GeorgieF
No es exactamente la respuesta correcta, pero guiará a algunas personas: considere implementar un daemon real. Si está en ruby, puede usar Daemons o leer los conceptos básicos de lo que debería hacer en esta descripción de cómo funciona un daemon en Unix: http://daemons.rubyforge.org/Daemons.html –