Skip to content

Instantly share code, notes, and snippets.

@pavelpower
Forked from sletix/commit-msg
Last active August 29, 2015 14:02
Show Gist options
  • Save pavelpower/75421631b54f9f2901e3 to your computer and use it in GitHub Desktop.
Save pavelpower/75421631b54f9f2901e3 to your computer and use it in GitHub Desktop.
#!/bin/bash
# Создаем файл .git/hooks/commit-msg и сохраняем туда этот текст
# Не забываем дать права на выполнение этого файла $ chmod 777 .git/hooks/commit-msg
# создаем временный файл
tempname="ticket-id-XXXX";
tempfile=`mktemp $tempname`;
# выделяем из имени бранча номер тикета. Бранч всегда называется по шаблону Номер_Краткое_Описание
# например 1364_restore_xterm_title или 1364-restore-xterm-title
ticket=`git branch|grep '* '|cut -f 1 -d '_' | cut -f 1 -d '-' |cut -f 2 -d ' '`;
# берем сообщение комита
message=`cat $1`;
# если это первый коммит в бранче то вначале описания к коммиту добавляем [#Номер]
if [[ $ticket =~ ^[0-9]+$ ]]; then
# сливаем во временный файл номер и текст коммита
echo "[#$ticket] $message" >> "$tempfile";
# переписываем файл коммита временныйм файлом
mv "$tempfile" "$1"
else
rm $tempfile
fi
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment