跳转到内容

语义化版本控制

语义化版本格式为:MAJOR.MINOR.PATCH(主版本号.次版本号.修订号),其版本号递增规则如下:

  1. 主版本号 (MAJOR): 当你做了 不兼容的 API 修改 时递增。
  2. 次版本号 (MINOR): 当你以 向下兼容的方式新增了功能 时递增。
  3. 修订号 (PATCH): 当你做了 向下兼容的错误修复 (Bug Fixes) 时递增。

  • 当 API 的公共接口发生破坏性变更(Breaking Changes),导致旧的依赖客户端无法直接升级时,必须递增 MAJOR 版本,并将 MINORPATCH 清零(例如从 1.5.2 升级到 2.0.0)。
  • 0.y.z 阶段(即大版本号为 0),系统处于初始开发阶段,API 随时可能发生变化,此时的 0.y.z 变更不需要严格遵循 MAJOR 不兼容的规则。
  • 当引入了新的公共 API、弃用了某些旧 API(Deprecation),或者在内部代码中实现了显著的新功能,但 确保现有 API 接口依旧保持兼容 时,必须递增 MINOR 版本,并将 PATCH 清零(例如从 1.5.2 升级到 1.6.0)。
  • 仅用于向下兼容的缺陷修复(Bug Fixes)。这指的是没有新增公共 API,也没有修改已有公共 API 的内部代码修正(例如从 1.5.2 升级到 1.5.3)。