Git 消息提交规范

生成 Git 提交信息

1. 查看文件变更
2. 使用中文生成 `git commit` 需要的提交消息
3. 生成一个英文的分支名称。

- 不要运行`git add`
- 不要运行`git commit`

## Git Commit 消息提交规范

一、提交格式

<type>(<scope>): <subject>

<body> <footer>

示例:
feat(auth): 添加 JWT 令牌刷新逻辑

二、字段说明

- type: 提交类型(必须)
- scope: 修改范围(可选)
- subject: 简短说明,命令式语气,首字母小写
- body: 补充说明,可多行
- footer: 关联 issue 或 BREAKING CHANGES

示例:

- feat(api): add pagination params
- Closes #123

三、常见 Type 类型

- feat 新功能
- fix 修复 bug
- refactor 重构(非新功能/非修复)
- docs 文档修改
- style 样式/格式调整
- test 测试相关修改
- perf 性能优化
- build 构建系统或依赖更改
- ci CI/CD 配置
- chore 杂项(非代码逻辑)
- revert 回滚提交

示例:

- feat(auth): add JWT refresh logic
- fix(ui): button color contrast for dark mode
- refactor(api): simplify fetch wrapper

四、提交示例

- feat(user): add profile picture upload
- support image cropping and compression
- validate file size and type
- closes #145

- fix(router): handle undefined route params
- refactor(core): extract date utilities to shared module
- docs: update contributing guide for pnpm setup
- perf(api): cache user requests for 5 minutes

五、书写规范

1. 使用命令式语气(如 add, fix, remove)
2. 不要以句号结尾
3. 主题行不超过 72 字符
4. 中文团队推荐中英文混写,例如:
   feat(api): 添加分页参数支持 (add pagination params)
5. 破坏性变更写法:
   feat(api): change user endpoint response
   BREAKING CHANGE: /api/user now returns {id, name} instead of {uid, username}

六、Emoji 提交风格(可选)

- ✨ feat: 新功能
- 🐛 fix: 修复问题
- 🧹 refactor: 重构代码
- 📚 docs: 文档修改
- ⚡ perf: 性能优化
- 🧪 test: 添加或修改测试

示例:

- ✨ feat(ui): add theme switcher
- 🐛 fix(api): correct error handling
- 🧹 refactor(core): cleanup imports

提交类型 Emoji
初始提交。 🎉 :tada:
版本标签 🔖 :bookmark:
新功能 :sparkles:
错误修正 🐛 :bug:
文档 📚 :books:
记录源代码 💡 :bulb:
性能提升 🐎 :racehorse:
添加测试 :white_check_mark:
使测试通过 ✔️ :heavy_check_mark:
一般更新 :zap:
改进格式/结构 🎨 :art:
重构代码 🔨 :hammer:
删除代码/文件 🔥 :fire:
升级依赖 ⬆️ :arrow_up:
降级依赖 ⬇️ :arrow_down:
删除依赖项 :heavy_minus_sign:
添加依赖项 :heavy_plus_sign:
关键修补程序(定期发布的补丁) 🚑 :ambulance:
工作正在进行中 🚧 :construction:
配置文件 🔧 :wrench:
合并分支 🔀 :twisted_rightwards_arrows:
错误的代码/需要改进 💩 :hankey:
还原更改 :rewind:
重大变化 💥 :boom:

See also:


angular 消息规范

build: 影响构建系统或外部依赖项的更改(示例范围:gulp、broccoli、npm)
ci: 对我们的 CI 配置文件和脚本的更改(例如:CircleCi、SauceLabs)
docs: 仅文档更改
feat: 一个新功能
fix: 一个错误修复
perf: 提高性能的代码更改
refactor: 既不修复错误也不添加功能的代码更改
test: 添加缺失的测试或纠正现有的测试
posted @ 2022-03-28 09:23  Ajanuw  阅读(103)  评论(0)    收藏  举报