作为开发者,我们每天都要写大量的 Git commit 消息。一份清晰规范的 commit 历史就像一本好的开发日记,能大大提高团队协作效率。今天给大家分享我们稀土掘金团队正在使用的 commit 规范,让你的提交记录既专业又优雅!✨
🌟 为什么需要规范?
- 提高可读性 - 让团队成员快速理解每次提交的目的
- 方便检索 - 通过类型快速过滤特定类型的提交
- 自动生成日志 - 工具可以自动生成漂亮的 ChangeLog
- 关联工作项 - 与项目管理工具(如 Jira)无缝集成
🎨 我们的 Commit 消息格式
<emoji> <type>(<scope>): <subject>
<body>
<footer>
举个 🌰
✨ feat(用户中心): 新增手机号绑定功能
- 添加手机号验证接口
- 实现绑定逻辑
- 增加短信验证码发送
Closes JIRA-123
Related #45
🏷️ Commit 类型与 Emoji 对照表
| Emoji | 类型 | 说明 |
|---|---|---|
| ✨ | feat | 新增功能 |
| 🐛 | fix | 修复 bug |
| 📝 | docs | 文档更新 |
| 💄 | style | UI 样式调整 |
| ♻️ | refactor | 代码重构 |
| ⚡️ | perf | 性能优化 |
| ✅ | test | 测试相关 |
| 🔧 | chore | 构建/工具变更 |
| 🎉 | init | 项目初始化 |
| 🔥 | remove | 删除代码/文件 |
| 🚧 | wip | 工作进行中 |
📌 详细说明
1. 标题行 (必填)
✨ feat(用户中心): 新增手机号绑定功能
- Emoji:直观表达提交类型
- Type:使用上述标准类型
- Scope:可选,说明影响范围
- Subject:简明扼要说明变更
2. 正文 (可选)
- 添加手机号验证接口
- 实现绑定逻辑
- 增加短信验证码发送
- 使用列表形式
- 说明变更的详细内容
- 每行不超过72个字符
3. 页脚 (可选)
Closes JIRA-123
Related #45
- 关联问题跟踪ID
- 标记破坏性变更
- 引用相关PR/Issue
🛠️ 工具链推荐
1. Commitizen - 交互式提交工具
npm install -g commitizen
cz-conventional-changelog
2. Gitmoji - Emoji 提交指南
git commit -m "✨ feat: add new feature"
3. Husky + Commitlint - 提交校验
npx husky add .husky/commit-msg 'npx commitlint --edit $1'
🏆 优秀实践案例
功能开发
✨ feat(支付): 接入微信支付SDK
- 实现微信支付接口调用
- 添加支付结果回调处理
- 更新API文档
Closes JIRA-325
Bug修复
🐛 fix(登录): 修复验证码重复使用问题
- 增加验证码使用状态检查
- 优化错误提示信息
Fixes #128
文档更新
📝 docs(README): 更新项目启动说明
- 添加环境变量配置说明
- 补充Docker部署指南
💡 小贴士
- 保持简洁:标题行不超过50个字符
- 使用现在时:"add" 而不是 "added"
- 避免句号:标题行不要使用标点结尾
- 区分大小写:类型使用小写字母
- 善用Emoji:让提交记录更生动
📚 延伸阅读
希望这份指南能帮助你的团队写出更规范的 commit 消息!如果有更好的建议,欢迎在评论区交流讨论~ 🎯
掘金小贴士:我们团队使用这套规范后,代码审查效率提升了40%!你也快来试试吧! 🚀
#Git #版本控制 #开发规范 #掘金技术