Aplicar formatting de post de compromiso en git

¿Cómo puedo hacer cumplir un formatting de post de compromiso en git? ¿Puede esto establecerse en un nivel de repository para que cada persona que crea una sucursal tenga esta aplicación.

Como se describe en Git ProBook " Customizing Git – Un ejemplo de Git-Enforced Policy ", dicha aplicación se establecería mediante un hook , más específicamente, un hook del lado del server como uno de update :

Todo el trabajo del lado del server irá al file de update en su directory de ganchos. El gancho de update ejecuta una vez por cada twig que se empuja y toma tres arguments:

  • El nombre de la reference que se empuja a
  • La vieja revisión donde esa twig era
  • La nueva revisión está siendo empujada

Eso es preferible a los ganchos del lado del cliente (como un pre-commit ) que:

  • debe ser configurado manualmente por cada usuario
  • puede ser pasado por alto

Un gancho del lado del server, para un repository dado, hará cumplir cualquier regla que desee al rechazar un git push si no se respeta su política.

Esto supone que tiene control sobre el server de alojamiento repo remoto al que los usuarios están presionando.

Si no lo hace, regresa a los ganchos de precompromisos del lado del cliente, que se pueden configurar a través de una plantilla de git, cuyo directory de templates se puede compartir entre todos los usuarios (comenzando con git 2.9, junio de 2016) .