Estoy empezando a jugar con git hooks, y me gustaría crear uno para evitar que un desarrollador cree una nueva rama cuando se encuentre en una rama específica. El proceso actual en nuestra empresa tiene la intención de tener este aspecto:Git gancho para evitar la creación de nuevas ramas de ramas específicas
git checkout master
git fetch
git reset --hard origin/master
git checkout -b [branch name]
do awesome things.
Sin embargo, de vez en cuando se mueve rápidamente, algunos desarrolladores acaban de comenzar esta nueva rama de un acuerdo de recompra puesta en escena. Lo cual causa dolor.
Entonces, me gustaría crear un gancho para interrumpir cuando un desarrollador comienza a crear una nueva rama, verificar en qué rama están y exit 1
si la rama no es master
(o simplemente detener la acción) si el nombre de la sucursal es staging
), o permitirlo de otra manera.
Editar:
Al leer más sobre esto, me doy cuenta de que quiero un gancho pre-salida, lo cual no parece existir. A menos que alguien tenga una mejor idea, voy a proceder a imprimir una advertencia muy grande en un enlace posterior a la salida si el escenario anterior se cumple.
Una vez más, ¿por qué desea evitar ramificación? – jman
Nuestra rama de etapas contiene una gran cantidad de código que no desearíamos empujar a la producción, necesariamente. – hookedonwinter