#!/bin/sh
# Refuse commits (and, via pre-merge-commit, merge commits) while main is checked out.
# Cherry-pick, revert and fast-forward merges don't run these hooks; pre-push still stops
# their result from reaching the remote.
name=${1:-pre-commit}
if [ "$(git symbolic-ref --short -q HEAD)" = "main" ]; then
  echo "$name: committing on main is not allowed; create a branch first." >&2
  exit 1
fi
exit 0
