Semver-理解语义化版本控制

281 阅读1分钟

软件开发中为了更好的管理版本,减少版本的混乱,推行语义化的版本。版本号形式为:主版本号.次版本号.修订号,即 x.y.z。

另外,先行版本号及版本编译信息可以加到“主版本号.次版本号.修订号”的后面,作为延伸。

下面是x 、y、z 具体的语义。

x(Major)

表示主版本号,当发布了不兼容的API 的重大更新。比如 React 17 到 18 的发布

y(Minor)

表示次版本号,发布了向下兼容的新功能特性。比如 Vue 3.0 到 3.2 的发布

z(Patch)

表示修订号,发布了向下兼容的问题修复。

除了以上三个正式版本,在开发前还会有一个内测先行版本。跟在 z 的后面,一般是 x.y.z-alpha

并且他们的顺序是这样的:

x.y.z-alpha01 > x.y.z-beta01 > x.y.z-rc01

先行版本号

其中又分为

  1. alpha: 内部测试版,会有很多bug,不会向外发布。
  2. beta: 也是测试版, 这个阶段的版本会一直加入新的功能。在 Alpha 之后推出
  3. rc(Release Candidate):正式版本前的候选版本。RC 版以稳定和 bug 修复为主,不会再加入新的功能。

当产品功能在开发阶段,一般为 0.0.1-xxx 开始,而到了产品上线并且稳定运行,这时便可以把主版本号进行提升。从 0.0.1-xxx 提升到 1.0.0。表示这是一个『船新』版本。

参考:

  1. semver.org/