#!/usr/bin/env bash # 仅当本次提交涉及 admin 源代码或配置时,运行 admin 构建(含 vue-tsc 类型检查) # 通过检查暂存区是否有 zhican/admin/ 下的相关文件来决定 set -e CHANGED=$(git diff --cached --name-only --diff-filter=ACMR \ | grep -E '^zhican/admin/(src/|.*\.(json|ts|html))' || true) if [ -z "$CHANGED" ]; then exit 0 fi echo "→ pre-commit: 检测到 admin 变更,运行 pnpm run build..." cd "$(git rev-parse --show-toplevel)/zhican/admin" if ! command -v pnpm >/dev/null 2>&1; then echo "pre-commit: 未找到 pnpm,跳过构建检查(请手动运行 pnpm run build 验证)" >&2 exit 0 fi pnpm run build