Probablemente usaría el gancho prepare-commit-msg
para agregar eso al archivo. Desde la página de manual (vinculada):
Este enganche se invoca mediante la confirmación de git justo después de preparar el mensaje de registro predeterminado, y antes de que se inicie el editor.
Toma de uno a tres parámetros. El primero es el nombre del archivo que contiene el mensaje de registro de confirmación. El segundo es el origen del mensaje de confirmación ... [mensaje, plantilla, combinación, squash o confirmación] ...
Si el estado de salida es distinto de cero, la confirmación de git abortará.
El propósito del gancho es editar el archivo de mensajes en su lugar ...
Usted puede obtener la rama actual con git symbolic-ref HEAD
.
Podría omitir las plantillas por completo, y hacer que el gancho preceda/inserte/agregue el nombre de la rama. Caso más simple, anexando, el script es solo una línea de shebang, luego git symbolic-ref HEAD >> "$1"
. Use su método favorito si desea incrustarlo: más legible para mover el original, escribir y anexar, pero el método vinculado en los comentarios ciertamente también funciona.
Si prefiere usar una plantilla con marcadores de posición, puede hacer algo como sed -i "s/Bug : \$BUG/BUG : $(git symbolic-ref HEAD)/" "$1"
. Estoy seguro de que puedes imaginar muchas otras variaciones.
Es posible que desee suprimir este comportamiento para algunos de los tipos de confirmaciones (ese segundo argumento) o incluso solo activarlo si el segundo argumento es "plantilla", si está utilizando el enfoque de sustitución repetitivo.
Oh, leyó mal que SRY :(También podemos establecer un alias para git commit, que primero encuentra la rama actual, la escribe en un archivo temporal y llama a la confirmación de git con el parámetro --template. – ZeissS