Git 提交信息规范 — Emoji + Type 约定式提交
统一的 Git 提交信息规范能大幅提升代码历史的可读性,配合 AI 工具自动生成,零学习成本。
规范总览
格式
1 | - <emoji> <type>(<scope>): <subject> |
示例
1 | - ✨ feat(api): 添加用户登录接口 |
1 | - 🐛 fix(components): 修复日期选择器样式错乱 |
1 | - 📝 docs: 更新 API 文档 |
Type 与 Emoji 映射
| Emoji | Type | 说明 |
|---|---|---|
| ✨ | feat | 添加新功能 |
| 🐛 | fix | 修复 bug |
| 📝 | docs | 对文档进行修改 |
| ♻️ | refactor | 代码重构 |
| ⚡ | perf | 提高性能的代码修改 |
| 🧑💻 | dx | 优化开发体验 |
| 🔨 | workflow | 工作流变动 |
| 🏷️ | types | 类型声明修改 |
| 🚧 | wip | 工作进行中 |
| ✅ | test | 测试用例添加及修改 |
| 🔨 | build | 构建系统或依赖变更 |
| 👷 | ci | CI 配置变更 |
| ❓ | chore | 其它杂项修改 |
| ⬆️ | deps | 依赖项修改 |
| 🔖 | release | 发布新版本 |
详细规则
Subject(必填)
- 不超过 50 个字符
- 使用祈使句,如"添加"而非"添加了"
- 结尾不使用句号
Body(可选)
- 每行不超过 72 个字符
- 详细描述更改的原因,而非"做了什么"
- 若无复杂逻辑可省略
Footer(可选)
- 引用 Issue:
Closes #123 - 重大变更(Breaking Change)在此说明
- 若无则省略
配置方式
1. VSCode(完整配置)
打开 VSCode 命令面板(Cmd + Shift + P),执行 Preferences: Open User Settings (JSON),在 settings.json 中添加以下配置:
1 | "github.copilot.chat.localeOverride": "zh-CN", |
配置好之后,在 VSCode 源码管理面板(Ctrl + Shift + G)写提交信息时,Copilot 会自动输出符合规范的提交信息。
2. Claude Code(完整配置)
在 ~/.claude/CLAUDE.md(全局)或项目根目录的 CLAUDE.md(项目级)中添加:
1 | --- |
3. Hermes Agent
Hermes Agent 会自动加载 ~/.claude/CLAUDE.md 中的提交规范,生成提交信息时遵循相同的 emoji + type 格式。
使用效果
配置后,在 VSCode 源码管理面板写提交信息时,Copilot 会自动输出符合规范的提交信息:
1 | # 输入: |
在 Claude Code 中运行 claude -p "提交当前更改" 也会生成符合规范的提交信息。
常见场景速查
| 场景 | 写法 |
|---|---|
| 新功能 | ✨ feat(api): 添加商品搜索接口 |
| 修 Bug | 🐛 fix(cart): 修复数量加减按钮失效 |
| 改文档 | 📝 docs: 更新部署说明 |
| 重构 | ♻️ refactor(auth): 提取认证中间件 |
| 性能 | ⚡ perf(list): 虚拟滚动优化长列表渲染 |
| 更新依赖 | ⬆️ deps: 升级 FastAPI 到 0.110.0 |
| CI 配置 | 👷 ci: 添加自动化测试工作流 |
| 发布版本 | 🔖 release: v2.1.0 |
相关工具:约定式提交规范
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 Jerome Xiong!
评论

