- サンプルをコピーして作成
cp .git/hooks/commit-msg.sample .git/hooks/commit-msg
- commit-msg の内容は以下のような感じ
- 関数にしておくと取り回しやすい
#!/bin/bash
#
# Called by "git commit" with one argument, the name of the file
# that has the commit message. The hook should exit with non-zero
# status after issuing an appropriate message if it wants to stop the
# commit. The hook is allowed to edit the commit message file.
# [チームで共有しておきたい!オススメ githooks まとめ - Qiita](https://qiita.com/shibukk/items/714c656c2c4de34ed504)
commit_message=$(cat "$1")
check_message_format() {
local REGEX='^\[add|fix|update|remove\].+'
if [[ ! $commit_message =~ $REGEX ]]; then
echo >&2 '[ERROR] コミットメッセージのフォーマットが正しくありません'
exit 1
fi
}
check_message_format
- 有効にする
chomd +x .git/hooks/commit-msg
git init