返回板块
S11 git仓库与命名门禁SOP
源文件:
C:/Users/xub/.workbuddy/spec/3.行政法规/SOP/S11_git仓库与命名门禁SOP.md类别:SOP(用户级全域规范)
名称释义:git 仓库初始化 + 命名规范提交前门禁(pre-commit hook)
权威源:C:\Users\xub\.workbuddy\MEMORY.md§十二 12.9
固化位置:~/.workbuddy/MEMORY.md(所有 Agent 一律生效)
git 仓库与命名门禁 SOP(2026-08-25 确立 · 全域规范)
固化与范围:本 SOP 把「git 仓库 + 命名门禁钩子」固化为全域硬约束。凡在任意工作空间 / 项目建立 git 仓库,或对已有仓库启用提交管控,必须安装命名门禁(pre-commit hook),使命名规范在提交前自动拦截,不再依赖人工自觉。执行载体 =
~/.workbuddy/_tools/install_naming_hook.sh(安装器)+hooks/pre-commit(模板)+naming_audit.py(审计器)。
一、触发场景(任一即执行,不询问)
- 新项目 / 新工作空间首次
git init。 - 已有 git 仓库尚未装命名门禁。
- 命名规范版本更新后,需批量刷新各仓库门禁。
二、门禁能力与边界
| 项 | 说明 |
|---|---|
| 校验对象 | 仅本次暂存文件(git diff --cached --diff-filter=ACMR),不扫整树,避免阻塞历史存量 |
| 校验基准 | _tools/naming_audit.py 的 PATTERNS(时间戳·连接符·版本号违禁形式,单一真相源) |
| 合规 | 静默放行,exit 0 |
| 违规 | 拦截提交 exit 1,提示整改命令(naming_remediate.py) |
| 工具缺失 | 无 python / 找不到 audit → 降级放行,不卡死提交 |
| 紧急跳过 | git commit --no-verify |
三、标准流程(三步)
# 1) 初始化仓库(若尚未是 git 仓库)
cd "F:/某工作空间" && git init
# 2) 安装命名门禁(installer 会替换 __NAMING_AUDIT_PATH__ / __MANAGED_PYTHON__ 占位符)
bash "C:/Users/xub/.workbuddy/_tools/install_naming_hook.sh" .
# 3) 三段验证
git commit --allow-empty -m "chore: gate test" # 空提交 → 应放行(exit 0)
echo x > _t_v20260815.txt && git add _t_v20260815.txt && git commit -m t # 违规 → 应拦截(exit 1)
rm -f _t_v20260815.txt && git reset HEAD -- . # 清理验证残留
四、批量安装(全域刷新)
# 扫描 ROOT 下所有 .git 仓库并逐个安装门禁,输出汇总(--all 模式)
bash "C:/Users/xub/.workbuddy/_tools/install_naming_hook.sh" --all "F:/400.WorkBuddy_origin"
五、关键实现约束(防回归,勿改)
- Python 选择:hook 内优先用受管 Python
~/.workbuddy/binaries/python/envs/default/Scripts/python.exe(__MANAGED_PYTHON__占位符由安装器替换),缺失时降级系统python。 - MSYS 路径陷阱:
/c/...、/f/...传给 Windows 版 Python 会被误判为相对路径而打不开。安装器与 hook 内一律用pwd -W取 Windows 原生路径(C:/...、F:/...)再传给naming_audit.py。 - 单一真相源:
naming_audit.py为唯一审计器;hook 仅引用其绝对路径,不在各仓库留副本,杜绝漂移。 - 仓库身份:git 身份(user.name/user.email)应仓库级配置,避免污染用户全局配置。
六、禁止事项
- 不递归
git init用户个人目录、系统目录。 - 不得对
~/.workbuddy/(含 db/token/凭证)建 git 仓库或提交。 - 不跳过门禁(
--no-verify)除非用户明确要求紧急提交。
利衡辨 · 全域资料站 | 全域七链元路由 · 一进一出
宪法 > 基本法 > 行政法规 > 地方法规 > 地方规章
宪法 > 基本法 > 行政法规 > 地方法规 > 地方规章