概要
GitHubではコミットメッセージにissue番号が入っていると、コミットメッセージがissueにも表示されるようになる。
開発を続けていくとコード上の変更がなぜ行われたかがわからなくなることがある。
その際にコミットメッセージだけではなく、元issueも参照できると変更理由やそれに伴うレビュー内容が追跡しやすくなる。
そのため、コミットメッセージにissue番号を自動付与する仕組みを導入する。
前提条件
ブランチ名は issue-【issue番号】-【任意の文字列】とする。
(実際は-【番号】-だけで抜き出せたりもするが一応そんなルールに
例:
issue-15-add-aspell
issue-18-
導入方法
該当プロジェクトの.git\hooks\commit-msg
を以下の通りとする
.git\hooks\commit-msg
#!/bin/sh
#ブランチ名を取得
Branch="$(git branch --show-current)"
#正規表現でブランチ名からissue番号を取得
RequestNo="$(echo $Branch | sed -e "s/.*\-\([0-9]*\)\-.*/\1/g")"
#コミットメッセージの最初にチケット番号を追加する
mv $1 $1.tmpbycommit-msg
echo -n "#$RequestNo " > $1
cat $1.tmpbycommit-msg >> $1