Files
renovate/.husky/commit-msg
2026-08-22 11:22:20 +00:00

27 lines
892 B
Bash
Executable File

#!/bin/sh
msg=$(git stripspace --strip-comments <"$1")
abort() {
echo
echo "Aborting commit."
echo "$1"
echo "$2"
echo
echo "If you're sure you want to keep it, run git commit with the --no-verify flag."
echo
exit 1
}
if printf '%s\n' "$msg" |
grep -Eiq '(closes|fixes|resolves|fixed|closed|resolved):?[[:space:]]+#[0-9]+'; then
abort "The commit message contains an issue closing keyword (closes, fixes, resolves, ...)." \
"Put it in the pull request description instead, otherwise CI fails."
fi
# A 'BREAKING CHANGE' footer makes semantic-release publish a major version,
# see .releaserc.json.
if printf '%s\n' "$msg" | grep -Eiq '^[[:space:]*]*BREAKING[ -]CHANGE[:[:space:]]'; then
abort "The commit message contains a 'BREAKING CHANGE:' footer." \
"This triggers a major release, which we prepare deliberately, see docs/development/major-release.md."
fi