# git-std hooks — pre-commit.hooks
#
# Each line is a command run during the pre-commit hook.
# Prefix controls behavior:
#
# ! check run command, block commit on failure
# ~ fix auto-format staged files and re-stage (pre-commit only)
# uses a stash dance to safely isolate staged content
# ? advisory run command, never block commit
#
# $@ contains the list of staged files — commands can use or ignore it.
#
# Examples:
# ! cargo fmt --check # fail if code is unformatted
# ! cargo clippy # lint workspace
# ? cargo test # run tests, never block commit
#
# Enable/disable this hook:
# git std hook enable pre-commit
# git std hook disable pre-commit
#
~ just fmt