Agregar commit author como remitente para hook / post

Cuando alguien realiza una confirmación, quiero que el autor se configure como el remitente. He networkingucido este fragment de código en post-receive

 send_mail() { if [ -n "$envelopesender" ]; then /usr/sbin/sendmail -t -f "$envelopesender" else /usr/sbin/sendmail -t fi } 

Y debía agregarlo a la condición else, creo que con algo como

 git log <SHA-1> --pretty=format:"%an<%ae>" -1 

Y creo que usaría la variable $newrev para el sha.

No estoy tan fresco en mi fiesta . ¿Cómo puedo hacer que esto suceda?

Deberías poder hacer esto, supongo:

 send_mail() { if [ -n "$envelopesender" ]; then /usr/sbin/sendmail -t -f "$envelopesender" else author="$(git --no-pager show -s --pretty="%an" $newrev)" email="$(git --no-pager show -s --pretty="%ae" $newrev | sed 's/ *$//g')" if [ -n "$email" ]; then /usr/sbin/sendmail -t -F "$author" -f "$email" fi fi } 

Para git show :

  • git show parece un command más apropiado para extraer información sobre la confirmación en lugar de git log . (Puede haber algo aún más apropiado que puedas usar;))
  • --no-pager asegura que no abre el progtwig de buscapersonas
  • -s omite la list de files y las diferencias en la confirmación

Para sendmail :

  • Establezca el nombre del remitente usando -F
  • Establezca el correo electrónico del remitente usando -f