版本号的定义

1.版本号的基本结构

最常见的形式是 语义化版本号(Semantic Versioning, SemVer)

1
2
Major.Minor.Patch
主版本号.次版本号.修订号

e.g. 1.2.3

  • 主版本号(Major)
    • 当你做了不兼容的 API 或重大功能变更时增加
    • 例如从 1.x.x 升级到 2.x.x
  • 次版本号(Minor)
    • 当你做了向下兼容的新功能时增加
    • 例如从 1.2.3 升级到 1.3.0
  • 修订号(Patch)
    • 当你做了向下兼容的问题修复时增加
    • 例如从 1.2.3 升级到 1.2.4

2.可选扩展部分

  • 先行版本号(Pre-release)
    • 用于 alpha、beta、RC 等测试版本
    • 如1.2.3-alpha.1 | 2.0.0-beta.2
  • 构建元数据(Build metadata)
    • 用于标记构建编号或 CI/CD 信息
    • 如1.2.3+20251026.1
      完整版语义化版本号MAJOR.MINOR.PATCH-PRERELEASE+BUILD

个人例子:
本人Github上发布的项目Hashit的一个Release可以这么写版本号
1.0.0-stable+62198d63
其中62198d63是CRC-32