Git 提交信息(Commit Message)前缀规范
作用:标准化提交信息,提高可读性,便于生成 CHANGELOG
,方便团队协作和问题追踪。
1. 核心前缀分类
前缀 | 适用场景 | 示例 |
---|---|---|
feat |
新增功能(Feature) | feat: 添加用户登录功能 |
fix |
修复 Bug | fix: 解决首页加载失败问题 |
docs |
文档变更(Documentation) | docs: 更新 API 接口文档 |
style |
代码样式调整(不影响逻辑) | style: 调整代码缩进和空格 |
refactor |
代码重构(非功能/Bug 修改) | refactor: 优化用户模块结构 |
perf |
性能优化 | perf: 减少数据库查询次数 |
test |
测试相关 | test: 添加用户注册单元测试 |
chore |
构建/工具变更 | chore: 更新 Webpack 配置 |
revert |
回退提交 | revert: 撤销某次错误提交 |
2. 详细使用场景
(1)feat
- 新增功能
- 适用于新功能、新组件、新接口等。
- 示例:
feat: 新增支付接口 feat: 添加暗黑模式切换
(2)fix
- 修复 Bug
- 适用于修复代码逻辑错误、UI 显示问题、兼容性问题等。
- 示例:
fix: 解决移动端菜单点击无效问题 fix: 修复订单状态未更新的 Bug
(3)docs
- 文档变更
- 适用于
README.md
、注释、API 文档、Wiki 等。 - 示例:
docs: 更新项目安装指南 docs: 添加贡献者说明
(4)style
- 代码样式调整
- 适用于 不改变逻辑 的代码格式化(空格、缩进、分号等)。
- 示例:
style: 统一按钮 CSS 命名规范 style: 调整 ESLint 配置
(5)refactor
- 代码重构
- 适用于代码优化、结构调整,但 不修复 Bug 也不新增功能。
- 示例:
refactor: 使用 Hook 重构用户组件 refactor: 抽离工具函数到独立文件
(6)perf
- 性能优化
- 适用于提升执行效率、减少资源消耗的变更。
- 示例:
perf: 使用缓存优化数据加载 perf: 减少重复渲染次数
(7)test
- 测试相关
- 适用于单元测试、集成测试、E2E 测试等。
- 示例:
test: 添加登录功能测试用例 test: 修复 CI 测试脚本
(8)chore
- 构建/工具变更
- 适用于依赖更新、配置文件修改、脚本调整等。
- 示例:
chore: 升级 Vue 到 3.4 chore: 添加 commitlint 校验
(9)revert
- 回退提交
- 适用于撤销之前的某次提交。
- 示例:
revert: 撤销某次错误的合并
3. 提交信息规范建议
- 前缀小写,后跟英文冒号
:
和空格。 - 主题简明扼要,不超过 50 字。
- 可附加正文(描述修改原因或细节):
feat: 新增用户管理页面- 添加用户列表组件 - 实现分页和搜索功能
- 避免模糊描述,如:
- ❌
更新代码
- ✅
fix: 修复登录页面样式错位
- ❌
4. 特殊场景处理
场景 | 前缀选择 | 示例 |
---|---|---|
UI 样式调整 | style |
style: 优化按钮悬停效果 |
UI 功能新增 | feat |
feat: 添加下拉动画 |
配置文件修改 | chore |
chore: 更新 .env 配置 |
路径/资源问题 | fix |
fix: 修正静态资源加载路径 |
5. 工具推荐
- Commitizen:交互式生成规范提交信息。
npm install -g commitizen
- Husky + Commitlint:提交时自动校验格式。
总结:规范提交信息能显著提升项目可维护性,建议团队统一遵守! 🚀