#!/usr/bin/env bash # # Pre-commit hook that runs CI-equivalent checks locally. # Runs `make pre-commit` (gen, fmt, lint, typos, build) which # catches most CI failures without needing Docker or Playwright. # Heavier checks (tests, site build) run via the pre-push hook. # # Installation (worktree-compatible): # # git config core.hooksPath scripts/githooks # # Bypass: git commit --no-verify set -euo pipefail cd "$(git rev-parse --show-toplevel)" unset GIT_DIR # In linked worktrees, set worktree-scoped hooksPath to override shared config. if [[ "$(git rev-parse --git-dir)" != "$(git rev-parse --git-common-dir)" ]]; then git config --worktree core.hooksPath scripts/githooks fi exec make pre-commit