我自己在 Codex 中常用的一套 Prompt(推荐)
#### Git 提交规范
每当你创建 git 提交时:
- 提交前务必检查完整的代码差异(git diff)。
- 使用约定式提交(Conventional Commits)规范编写一句话简明主旨。
- 留出一行空行。
- 以列表形式概括关键的代码变动。
- 着重阐述目的和意图,而不是单纯地罗列文件名。
- 注明任何破坏性变更(Breaking Changes)。
- 如果涉及,注明数据库/表结构/API 接口的变更。
- 绝不使用模糊笼统的提交信息,例如 "update"、"fix"、"modify" 或 "changes"。
- 提交信息应当能让人无需打开代码差异,就能直接理解本次提交的目的。
示例:
feat(user): 添加邮箱验证功能
- 添加验证令牌(token)的生成逻辑
- 用户注册后发送验证邮件
- 添加邮箱验证接口
- 在未验证状态下禁止登录
- 更新用户状态的处理方式
基于修改内容生成提交信息,在提交(commit)之前:
- 运行
git diff
- 审查完整的代码差异(diff)
- 概括关键变更
- 生成一个能反映实际代码变动的提交信息(commit message)
Git 提交规范
在进行 git 提交时:
- 务必编写有意义的提交信息。
- 第一行应为简明扼要的摘要(最多 72 个字符)。
- 空出一行后,详细说明:
- 如果相关,注明受影响的模块或文件。
- 使用祈使句。
示例:
feat(order): 支持部分退款
- 添加部分退款工作流
- 更新支付回调逻辑
- 添加退款状态校验
- 修改 OrderService 和 RefundService
- 为 refund_records 添加数据库迁移
推荐采用 Conventional Commits
例如:
feat(auth): 支持 GitHub OAuth 登录
- 添加 OAuth 回调接口
- 存储 GitHub 用户 ID
- 支持账号绑定
- 更新登录界面
或者:
fix(payment): 防止重复回调处理
- 引入 Redis 分布式锁
- 忽略重复的支付通知
- 完善回调日志记录
如果希望每个 commit 都像 PR 一样详细
可以要求:
每个 git 提交必须包含:
<type>(<scope>): <summary>
Why:
- 为什么需要此变更(变更原因)。
Changes:
- ...
- ...
- ...
Impact:
- ...
- ...
Testing:
- ...
例如:
feat(order): 支持延迟发货
Why:
- 商家需要提前安排发货计划。
Changes:
- 添加 shipment_time(发货时间)字段。
- 更新订单创建接口。
- 添加延迟发货定时任务。
Impact:
- 订单模块
- 调度器
Testing:
- 单元测试
- 手动接口验证