Gancho Git para get el nombre de la twig anterior

Estoy trabajando en .git/hooks/post-checkout y tengo problemas para get / exportar el nombre de la sucursal u get el nombre de la sucursal anterior. Quiero reiniciar el server cuando cambio a o desde la twig s3 .

No pude encontrar la fuente de env var en bash, así que traté de usar git para get la twig anterior, pero lo más parecido que obtuve fue git checkout - / git checkout @{-1} , aunque no estoy seguro simplemente cómo recuperar el nombre de la twig anterior sin la llamada para pagar.

¿Debo usar Git env vars en lugar de shell?

El file actual solo reinicia el server en cada pago

 #!/bin/bash touch tmp/restart.txt echo " *** restarting puma-dev" current_branch=$(git branch | sed -n -e 's/^\* \(.*\)/\1/p') if [ "$current_branch" = "s3" ] then echo " *** please don't upload any files" echo fi 

Debería poder usar esta línea para captar el nombre de la twig anterior:

git rev-parse --abbrev-ref @{-1}

y para get el nombre de la sucursal actual:

git rev-parse --abbrev-ref HEAD

Git transfiere los nombres de las references anteriores y actuales al enlace post-checkout , por lo que debería poder hacer algo como:

 #!/bin/sh oldref="$1" newref="$2" branch_update="$3" [ "$branch_update" = '1' ] || exit # exit if branch didn't change [ "$oldref" = 'refs/heads/s3' ] && oldref_was_s3=1 [ "$newref" = 'refs/heads/s3' ] && newref_is_s3=1 if [ -z "$oldref_was_s3" -a -n "$newref_is_s3" ]; then echo " *** please don't upload any files" fi 

Totalmente no probado, pero debe estar cerca.

Gracias en parte a Chris, cuyo método no pude interpretar o ponerme a trabajar, pero encontré que la información era útil, y gracias a Keif Kraken, cuyo método me ayudó a trabajar.

Reiniciar el server cuando se cambia ao desde una twig específica (s3)

.git/hooks/post-checkout

 #!/bin/bash oldref=$(git rev-parse --abbrev-ref @{-1}) newref=$(git rev-parse --abbrev-ref head) if [[ ( "$oldref" = "s3" || "$newref" = "s3" ) && "$oldref" != "$newref" ]] then touch tmp/restart.txt echo " *** restarting puma-dev" echo " *** please don't upload any files" fi