Pro Git
Pro Git La primera línea la imprime tu script, las otras dos son las que usa Git para decirte que el script finalizó con error (devuelve un valor distinto de cero) y que está rechazando tu envío. Por último, tienes esto:
To git@gitserver:project.git ! [remote rejected] master -> master (hook declined) error: failed to push some refs to 'git@gitserver:project.git'Verás un mensaje de rechazo remoto para cada referencia que tu script ha rechazado, y te dice que fue rechazado explícitamente debido al fallo del script de enganche.
Y más aún, si alguien intenta realizar un envío, en el que haya confirmaciones de cambio que afecten a archivos a los que ese usuario no tiene acceso, verá algo similar. Por ejemplo, si un documentalista intenta tocar algo de la carpeta lib, verá esto:
[POLICY] You do not have access to push to lib/test.rbY eso es todo. De ahora en adelante, en tanto el script update esté presente y sea ejecutable, tu repositorio nunca se verá perjudicado, nunca tendrá un mensaje de confirmación de cambios sin tu plantilla y tus usuarios estarán controlados.