mirror of
https://github.com/AstronautCheetah/frame-tweaks.git
synced 2026-10-17 13:00:18 +02:00
21 lines
1014 B
Bash
Executable File
21 lines
1014 B
Bash
Executable File
#!/usr/bin/env bash
|
|
# Checks a commit message (CONTRIBUTING.md "Commit style"): Conventional Commits format, checked by
|
|
# commitizen (dev/check-commit-msg.sh); and, if you opted in with
|
|
# `git config frame-tweaks.refuseToolTrailers true`, no tool attribution lines (dev/check-trailers.sh).
|
|
# Enable: dev/install-hooks.sh
|
|
set -euo pipefail
|
|
msg_file="${1:?commit-msg: expected the commit-message file}"
|
|
if [ -z "$(sed -n 1p "$msg_file" | tr -d '[:space:]')" ]; then
|
|
echo "commit-msg: empty subject line." >&2
|
|
exit 1
|
|
fi
|
|
if [ "$(git config --bool frame-tweaks.refuseToolTrailers)" = true ] &&
|
|
! "$(git rev-parse --show-toplevel)/dev/check-trailers.sh" "$msg_file"; then
|
|
echo "commit-msg: remove the tool attribution line(s) above (you set frame-tweaks.refuseToolTrailers)." >&2
|
|
exit 1
|
|
fi
|
|
if ! "$(git rev-parse --show-toplevel)/dev/check-commit-msg.sh" "$msg_file"; then
|
|
echo "commit-msg: start the subject with a type, e.g. \"fix(arrowpad): ...\" or \"docs: ...\" (.cz.toml)." >&2
|
|
exit 1
|
|
fi
|