名称: conventional-commits
描述: 使用 Conventional Commits 规范格式化提交信息。适用于创建提交、编写提交信息,或当用户提及提交、git 提交或提交信息时。确保提交遵循自动化工具、变更日志生成和语义化版本控制的标准格式。
许可证: MIT
元数据:
author: github.com/bastos
version: "2.0"
根据 Conventional Commits 规范格式化所有提交信息。这有助于自动化生成变更日志、进行语义化版本控制,并改善提交历史记录。
<类型>[可选范围]: <描述>
[可选正文]
[可选脚注]
feat: - 新增功能(对应语义化版本中的 MINOR 版本)fix: - 修复错误(对应语义化版本中的 PATCH 版本)docs: - 仅文档变更style: - 代码风格变更(格式化、缺少分号等)refactor: - 代码重构,不涉及错误修复或新功能perf: - 性能改进test: - 添加或更新测试build: - 构建系统或外部依赖变更ci: - CI/CD 配置变更chore: - 其他不修改源代码或测试文件的变更revert: - 撤销之前的提交可选的范围提供了关于代码库特定部分的额外上下文信息:
feat(解析器): 添加解析数组的能力
fix(认证): 解决令牌过期问题
docs(自述文件): 更新安装说明
可以通过以下两种方式标识破坏性变更:
!feat!: 产品发货时向客户发送电子邮件
feat(api)!: 产品发货时向客户发送电子邮件
feat: 允许提供的配置对象扩展其他配置
BREAKING CHANGE: 配置文件中的 `extends` 键现在用于扩展其他配置文件
chore!: 放弃对 Node 6 的支持
BREAKING CHANGE: 使用了 Node 6 不支持的 JavaScript 特性。
feat: 添加用户认证
feat(认证): 添加 OAuth2 支持
fix: 防止请求竞争
引入请求 ID 和对最新请求的引用。忽略来自非最新请求的传入响应。
移除用于缓解竞争问题但现已过时的超时设置。
feat!: 迁移至新的 API 客户端
BREAKING CHANGE: API 客户端接口已变更。所有方法现在返回 Promise 而非使用回调。
docs: 更正 CHANGELOG 的拼写
fix: 防止请求竞争
引入请求 ID 和对最新请求的引用。忽略来自非最新请求的传入响应。
移除用于缓解竞争问题但现已过时的超时设置。
Reviewed-by: Z
Refs: #123
fix: → PATCH 版本升级 (1.0.0 → 1.0.1)feat: → MINOR 版本升级 (1.0.0 → 1.1.0)在以下情况下使用此格式:
- 所有 git 提交
- 生成提交信息
- 拉取请求合并提交
- 当用户询问提交信息或 git 提交时
❌ Added new feature (过去时,首字母大写)
✅ feat: add new feature (祈使语气,小写)
❌ fix: bug (过于模糊)
✅ fix: resolve null pointer exception in user service
❌ feat: add feature (冗余)
✅ feat: add user profile page
❌ feat: Added OAuth support. (过去时,句号)
✅ feat: add OAuth support