tipos tag remove practices etiquetas crear best git githooks

remove - git tag best practices



Manejar mĂșltiples ganchos de pre-commit (2)

Tengo la necesidad de usar múltiples scripts de enganche de pre-commit. No estoy seguro de cómo manejarlos. ¿Deberían combinarse todos ellos en un solo gran script de pre-confirmación? Si no, ¿cómo manejar múltiples scripts de pre-commit?


¿Deberían combinarse todos ellos en un solo gran script de pre-confirmación?

Sí y no: solo puede declarar un script de pre-confirmación, por lo que este script debería encargarse de:

  • llamar a los scripts reales de pre-commit
  • eligió una orden para que esos scripts sean llamados.

Asi que:

  • un script de pre-commit
  • llamando a múltiples scripts, cada uno permite o no (con su estado de salida) la confirmación para continuar.

Puede usar un script de delegación que solo llame a otros scripts (subhooks):

https://gist.github.com/carlos-jenkins/89da9dcf9e0d528ac978311938aade43

Uso:

Haga que su sistema de construcción cree un enlace simbólico en el directorio de ganchos Git a este script con el nombre del gancho al que desea asistir.

Por ejemplo, pre-commit .

Este enlace ejecutará, en orden alfabético, todos los archivos ejecutables (subhooks) que se encuentren en una carpeta con el nombre del tipo de enlace al que asistes, con el sufijo .d .

Por ejemplo, pre-commit.d .

Cómo podría verse:

.git/hooks/ |_ pre-commit -> ../../tools/git/multihooks.py |_ pre-commit.d/ |_ 01-cpp_coding_standard |_ 02-python_coding_standard |_ 03-something_else

Esto requiere Python3, pero podrías venir con algo similar usando otras tecnologías.