Я бы, вероятно, просто использовал хук prepare-commit-msg
, чтобы добавить это в файл.С (связанной) man-страницы:
Эта ловушка вызывается git commit сразу после подготовки сообщения журнала по умолчанию и до запуска редактора.
Требуется от одного до трех параметров,Первым является имя файла, который содержит сообщение журнала фиксации.Вторым является источник сообщения о коммите ... [message, template, merge, squash или commit] ...
Если статус выхода не равен нулю, git commit будет прерван.
Цель ловушки - отредактировать файл сообщения на месте ...
Вы можете получить текущую ветку с помощью git symbolic-ref HEAD
.
Вы можете просто обойти шаблоныв целом, и имейте хук prepend / insert / append имя ветви.В простейшем случае, добавив, скрипт - это просто строка Шебанга, тогда git symbolic-ref HEAD >> "$1"
.Используйте ваш любимый метод, если вы хотите встроить его - наиболее читаемый, чтобы переместить оригинал в сторону, написать и добавить, но метод, связанный с комментариями, безусловно, тоже работает.
Если вы предпочитаете использовать шаблонс заполнителями вы можете просто сделать что-то вроде sed -i "s/Bug : \$BUG/BUG : $(git symbolic-ref HEAD)/" "$1"
.Я уверен, что вы можете представить множество других вариантов.
Возможно, вы захотите подавить это поведение для некоторых типов коммитов (этот второй аргумент) или даже включить его, только если второй аргумент ""шаблон ", если вы используете шаблонный подход замены.