Git Commit 前缀风格
文本风格
1. 前缀总览表
| 前缀 | 描述 |
|---|---|
feat |
表示新增功能,例如添加了一个新的模块、页面或 API 等 |
fix |
表示修复 Bug,即修复代码中的错误或问题 |
refactor |
表示重构代码,优化代码结构、可读性或性能,但不添加新功能或修复 Bug |
docs |
表示文档更新,包括修改文档内容、添加注释等 |
style |
表示代码格式调整,如调整缩进、空格等,但不改变代码功能 |
test |
表示测试相关的更改,如添加或更新测试用例 |
chore |
表示琐碎的任务,如更新构建工具、文档生成等 |
perf |
表示性能优化,改进代码性能 |
build |
表示构建相关的改动,如升级构建脚本或依赖项 |
ci |
表示持续集成相关的更改,如添加CI配置文件等 |
revert |
表示撤销之前的提交,回到之前的状态 |
merge |
表示合并分支的操作 |
2. 逐个说明
(1)[feat] (Feature)
- 表示新增功能
- 示例:
feat: add login functionality
(2)[fix] (Fix)
- 表示修复 Bug
- 示例:
fix: resolve null pointer exception
(3)[refactor] (Refactor)
- 表示代码重构,没有新增功能或修复 Bug
- 示例:
refactor: improve code structure in user module
(4)[docs] (Documentation)
- 表示更新文档,不影响代码逻辑
- 示例:
docs: update README with installation instructions
(5)[style] (Style)
- 表示代码格式修改(如空格、缩进等),不影响功能
- 注意:这里的
style与 UI 界面无关 - 示例:
style: fix indentation in main.ts
(6)[test] (Test)
- 表示添加或修改测试用例
- 示例:
test: add unit tests for authentication service
(7)[chore] (Chore)
- 表示构建过程或辅助工具的改动
- 示例:
chore: update dependency versions
(8)[perf] (Performance)
-
表示性能优化
-
示例:
perf: optimize database query execution time
(9)[build] (Build)
-
表示构建系统或外部依赖的改动
-
示例:
build: switch to new CI/CD pipeline configuration
(10)[ci] (Continuous Integration)
- 表示 CI 配置文件或脚本的改动
- 示例:
ci: add GitHub Actions workflow for automated testing
(11)[revert] (Revert)
- 表示撤销之前的提交
- 示例:
revert: undo changes introduced in commit message123
(12)[merge] (Merge)
- 表示合并分支的操作
- 示例:
merge: integrate feature branch into main
emoji 风格
| 前缀 | 描述 |
|---|---|
| 🎨 | 结构改进 / 格式化代码 |
| ⚡ | 性能改善 |
| 🔥 | 删除代码或者文件 |
| 🐛 | 修了一个 BUG |
| 🚑 | 重大热修复 |
| ✨ | 引入新的特性 |
| 📝 | 写文档 |
| 🚀 | 部署相关,例如 CI、Github Actions |
| 💄 | 更新界面与样式文件 |
| 🎉 | 创世提交 |
| ✅ | 更新测试 |
| 🔒 | 修复安全问题 |
| 🍎 | 修复在苹果系统上的问题 |
| 🐧 | 修复在苹果系统上的问题 |
| 🏁 | 修复在 Windows 系统上的问题 |
| 🤖 | 修复在安卓系统上的问题 |
| 🍏 | 修复在 iOS 系统上的问题 |
| 🔖 | 发布 / 版本标签 |
| 🚨 | 消除 linter 警告 |
| 🚧 | 进行中 |
| 💚 | 修复持续集成构建 |
| ⬇️ | 降级依赖 |
| ⬆️ | 升级依赖 |
| 📌 | 固定依赖在特定的版本 |
| 👷 | 添加持续集成构建系统 |
| 📈 | 添加分析或者跟踪代码 |
| ♻️ | 代码重构 |
| 🐳 | Docker 容器相关 |
| ➕ | 添加依赖 |
| ➖ | 删除依赖 |
| 🔧 | 改变配置文件 |
| 🌐 | 国际化与本地化 |
| ✏️ | 修正拼写错误 |
| 💩 | 写需要改进的坏代码 |
| ⏪ | 回滚改动 |
| 🔀 | 合并分支 |
| 📦 | 更新编译后的文件或者包 |
| 👽 | 由于外部 API 变动而更新代码 |
| 🚚 | 文件移动或者重命名 |
| 📄 | 添加或者更新许可 |
| 💥 | 引入破坏性的改动 |
| 🍱 | 添加或者更新静态资源 |
| 👌 | 代码审核后更新代码 |
| ♿ | 改进可访问性 |
| 💡 | 给源代码加文档 |
| 🍻 | 醉写代码 |
| 💬 | 更新文本和字面 |
| 🗃️ | 执行数据库相关的改动 |
| 🔊 | 添加日志 |
| 🔇 | 删除日志 |
| 👥 | 添加贡献者(们) |
| 🚸 | 改进用户体验 / 可用性 |
| 🏗️ | 架构改动 |
| 📱 | 响应性设计相关 |
| 🤡 | 模拟相关 |
| 🥚 | 添加一个彩蛋 |
| 🙈 | 添加或者更新 .gitignore 文件 |
| 📸 | 添加或者更新快照 |
| ⚗️ | 研究新事物 |
| 🔍 | 改进搜索引擎优化 |
| ☸️ | Kubernetes 相关的工作 |
| 🏷️ | 添加或者更新类型(Flow, TypeScript) |
你可以在 https://gitmoji.js.org/ 查看并复制。
自成一派风格
你不必一定要按照上述建议执行,commit 有着无限可能。
Git Commit 前缀风格
https://pudding.nousbuild.com/git-commit-prefix/