- 接入包 git-workflow.md.tmpl 新增 trailer 章节:此前只有炼境自身 commit 携带 规则命中记录,外部项目无此约定,规则有效性数据源仅覆盖 1 个项目; 随接入包分发后所有项目的 AI 会话都会回传规则命中 - cicd-workflow 模块注记刷新:Gitea Actions 改造完成(R0 实测) Rules-Applied: R01
79 lines
2.3 KiB
Cheetah
79 lines
2.3 KiB
Cheetah
# Git 工作流 — AI Agent 操作指南
|
||
|
||
> 把此文件粘贴给任何 AI Agent,让它了解本项目的 git 工作方式。由炼境接入包分发。
|
||
|
||
## 分支策略
|
||
|
||
```
|
||
dev ← 日常开发在这里 commit/push
|
||
↓
|
||
main ← 稳定分支,通过 PR 合入(合入时触发 CI code review)
|
||
```
|
||
|
||
- 小改动可直接 push `dev`
|
||
- 功能完整后开 PR(dev → main)
|
||
- 不要直接 push `main`,除非紧急热修复
|
||
|
||
## Commit 规范(lefthook 强制)
|
||
|
||
格式:`<type>(<scope>): <描述>`
|
||
|
||
| type | 用途 |
|
||
|------|------|
|
||
| `feat` | 新功能 |
|
||
| `fix` | Bug 修复 |
|
||
| `chore` | 配置、依赖、脚本 |
|
||
| `docs` | 文档 |
|
||
| `refactor` | 重构(不改功能) |
|
||
| `ci` | CI 配置 |
|
||
| `perf` | 性能优化 |
|
||
| `style` | 代码格式 |
|
||
| `test` | 测试 |
|
||
|
||
`scope` 用「模块/子模块」二级结构(如 `auth/login`、`api/user`、`db/order`),对应项目功能模块。
|
||
|
||
```bash
|
||
git commit -m "feat(auth/login): 新增手机号登录"
|
||
git commit -m "fix(api/user): 修正分页 off-by-one"
|
||
```
|
||
|
||
> 炼境会解析这些 commit 的 type/scope 作为飞轮数据:`fix` 计入返工率、`scope` 归到模块。
|
||
> **commit 写得越规范,飞轮数据越准。**
|
||
|
||
## Rules-Applied trailer(规则命中回传)
|
||
|
||
若本次任务中触发过 CONVENTIONS 自动推荐规则(R01-R11,见 `.blueprint/CONVENTIONS.md` 规则列表),
|
||
在 commit message 末尾追加一行 trailer(与正文空行分隔):
|
||
|
||
```
|
||
feat(auth/login): 新增手机号登录
|
||
|
||
Rules-Applied: R01,R05
|
||
```
|
||
|
||
- 只记录**真实触发**(主动检查或执行)的规则,未触发则整行省略
|
||
- 炼境自动解析此 trailer 做「规则命中 × 返工」交叉统计,是 CONVENTIONS 置信度进化的数据来源
|
||
- 凭空罗列会污染数据——宁缺毋滥
|
||
|
||
## 一个 commit = 一件独立的事
|
||
|
||
不要 `git add -A` 一次提交所有。按功能分批:
|
||
|
||
```bash
|
||
git add <相关文件>
|
||
git commit -m "feat(模块): 一件事"
|
||
```
|
||
|
||
## PR 大小控制
|
||
|
||
PR 别攒太大(建议每 3~5 个 commit 或几百行内就开一次),否则 CI code review 易超时失效。
|
||
「所有检测通过」≠ 代码被审查过——大 PR 即使 CI 全绿,review 可能已静默失效。
|
||
|
||
## 常用命令
|
||
|
||
```bash
|
||
git status --short
|
||
git log --oneline -10
|
||
git reset --soft HEAD~1 # 撤销最后一次 commit(保留改动)
|
||
```
|