APP版本号

版本号的语义化

2016-08-24  本文已影响62人  水止云起

在软件开发中,不管提供的是应用还是公共的类库,我们都应该使用一套规范的、统一的版本号规则。这样一套规则可以使软件版本的增长和其每一个版本信息更加清晰明了,才可以使得通过版本号进行的依赖管理变得有意义。这篇文章(语义化版本)就介绍了一种语义化版本控制规范。

版本号语义化规范

简单来说就是版本号格式为:主版本号.次版本号.修订号,意义及递增规则如下:

依赖管理中的版本号指明

有了上述的版本号的语义化规范后,就使得依赖管理不再混乱,可以明确标识。一般依赖管理中的依赖版本写为一个范围,在依赖更新时,依赖管理工具会将依赖的工具更新到范围内的最新版本。以 NPM 的语法(semver)为例,其他技术平台的依赖管理工具参考文档,只要遵守规范应该大同小异。

比较符号
范围连接符号
高级语法
1.2.3 - 2.3.4 表示 >=1.2.3 <=2.3.4
1.2 - 2.3.4 表示 >=1.2.0 <=2.3.4
1.2.3 - 2.3 表示 >=1.2.3 <2.4.0
1.2.3 - 2 表示 >=1.2.3 <3.0.0
 * 表示 >=0.0.0
1.x 表示 >=1.0.0 <2.0.0
1.2.x 表示 >=1.2.0 <1.3.0
空字符等同于 * 等同于 >=0.0.0
1 等同于 1.*.* 等同于 >=1.0.0 <2.0.0
1.2 等同于 1.2.* 等同于 >=1.2.0 <1.3.0
~1.2.3 表示 >=1.2.3 <1.3.0
~1.2 表示 >=1.2.0 <1.3.0 等同于 1.2.x
~1 表示 >=1.0.0 <2.0.0 等同于 1.x
^1.2.3 表示 >=1.2.3 <2.0.0
^0.2.3 表示 >=0.2.3 <0.3.0
^0.0.3 表示 >=0.0.3 <0.0.4

当次版本号和修订号缺失或用*表示时,其代表任意非负整数:

^1.2.x 表示 >=1.2.0 <2.0.0
^0.0.x 表示 >=0.0.0 <0.1.0
^0.0 表示 >=0.0.0 <0.1.0
^1.x 表示 >=1.0.0 <2.0.0
^0.x 表示 >=0.0.0 <1.0.0

Cocoapods 中的版本管理

Cocoapods 中的版本说明相对比较简单,也是使用符合指定范围的最新版本。

上一篇下一篇

猜你喜欢

热点阅读