[B1][R-P2-9] 无号提交治理(hook/CI 提示 + 台账补录) #216
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
批次:B1。依据:R 报告 §3.6 W4/INFO;台账 R-P2-9(无号提交约 50%)。
验收标准
不做项
关闭凭证核验 (2026-10-07)
commit:
64086c5(6 文件;gitleaksno leaks found;该提交本身即由新装的 commit-msg hook 真实校验放行;无迁移/无产品代码改动)验收标准逐条核验
bash scripts/install-commit-msg-hook.sh(写入.git/hooks/commit-msg,与 gitleaks pre-commit 独立)。临时 git 仓端到端实测:无号git commit→ 被拒绝 exit 1;带#216→ 通过;含[skip-issue]→ 通过;--no-verify→ 可紧急绕过(提示会同时绕过 gitleaks)。跳过通道 = 信息内显式[skip-issue]+ merge 提交自动放行.gitea/workflows/test.yml新增 commit-message-lint job(纯 git,不依赖 docker):push 校验before..after、PR 校验base..head;两端不可达 / 新分支首推 / force-push / fork 时回退--head-only,不误阻断主干、不追溯历史。YAML 经yaml.safe_load解析合法(jobs 顺序 commit-message-lint→backend→frontend);区间/HEAD/空区间三种判据路径已在临时仓实测git log --grep '#19[1-7]'考据:#192/#194/#195/#197 = closed 且均有「关闭凭证核验」评论(纠正评审时"凭证无法线上核验");#191/#193/#196 = open,逐条附 commit/文档依据(如 #193 联动 R-P0-3/#204 dry_run、#196 附 63498ef/5f5a67a 与治理报告)docs/standards/issue-workflow.md§1.5 增补钩子安装/判据/跳过通道/CI 不追溯;README 顶部 CI 行 + 「提交钩子」安装提示各一句判据同源(本地/CI 不漂移)
本地 hook 与 CI 都调用同一入库脚本
scripts/check-commit-issue.sh(--message-file/--range/--head-only),判据更新随仓库走、无需重装钩子。规则:含#数字或[skip-issue]或 merge 提交即放行;违规逐条列出后退出 1;空区间视为通过。实测证据
--range HEAD~3..HEAD精确只拦 1 条无号提交(带号/skip/merge 同行不误伤);--message-file带号 exit 0 / 无号 exit 1;空区间HEAD..HEADexit 0。unbound variable);bash -n语法检查通过。64086c5提交经其真实放行;两脚本以100755可执行位入库。不做项确认
台账 R-P2-9 已回填 ✅。