Appearance
commit message 该怎么写?
导读
commit message 是 git commit 的提交备注。用 type(scope): 标题 加四行正文的写法,每次提交就成了一份可回看、可回滚、可交给 AI 审查的轻量状态报告,不用再单独维护开发流水账。在源代码管理中用 Git,配合一段提示词,就可以让 AI 帮你完成提交。
先对齐两个基础概念
在讲具体操作前,需要先明确两个贯穿全文的工具概念。如果你已经熟悉,可以快速跳过。
Git 与 Commit
Git 是目前几乎所有 AI Agent 都集成的版本控制工具。后面有一节我们会详细介绍。当下你就可以当做是专门用来保存代码的项目的“时间机器”,它的核心作用是生成快照(Snapshot),把你当前工作区的所有文件状态完整保存下来。
每一次保存的动作叫一次 Commit(提交)。
每次 commit 都会生成一个唯一的 hash(哈希值如 a1b2c3d),相当于这个快照的身份证号。你可以在「源代码管理」或者类似的地方找到它。
Diff 与实际内容
Diff 是 git 用来快速定位修改位置的工具。一般会在编辑器中呈现,用红色和绿色,标出 「删除」「新增」「修改」。
🔴 - return data ← AI 说:这句删掉
🟢 + return data or [ ] ← AI 说:换成这句更稳妥
可以用键盘选择或者按键来操作,是否确定修改:
| 操作 | 按键 |
|---|---|
| 接受当前 Diff | Tab |
| 拒绝 | Esc |
| 撤销 | Cmd / Ctrl + Z |
| 保存 | Cmd / Ctrl + S |
commit message 怎么写、怎么读?
首先,不建议你亲自来写,直接扔给 AI 效率最高。
下面的这段提示词可以直接用于 git hook,或者直接塞到 system prompt。
textile
你是Git commit message生成器,遵循 Conventional Commits 规范,产出一份可以充当项目轻量状态报告的提交信息。
格式:
type(scope): 一句话标题,祈使句,≤50字符,不加句号
正文:
1. 改动意图(为什么改,不要复述diff改了哪一行)
2. 标记来源三选一:AI-generated / AI-assisted / human-fix
3. 核心prompt摘要、模型、已知风险、边界限制
4. 不需要长篇大论,方便人和AI后续回溯看懂项目进度
type可选:feat, fix, refactor, perf, docs, chore, test, style, revert
不要写模糊描述:update、change、wip、modify。
不要额外解释,只输出commit message。
diff内容:
{{diff}}