探索语义化版本控制
版本控制的主要方式之一是使用语义化版本控制。
它不是一个标准,但确实提供了一种一致的方式来表达特定版本的意向和语义。
它描述了一个版本与以前版本的向后兼容性。
语义化版本控制使用由三部分组成的版本号和一个额外的标签。
版本的形式为 Major.Minor.Patch
,对应于上一部分介绍的三种类型的更改。
使用语义化版本控制方案的版本示例是 1.0.0
和 3.7.129
。 这些版本没有任何标签。
对于预发行版本,通常在常规版本号后使用标签。
标签是一个文本后缀,用连字符与版本号的其余部分隔开。
标签本身可以是描述预发行版性质的任何文本。
例如 rc1
、beta27,
和 alpha
,组成像 1.0.0-rc1
这样的版本号是即将发布的 1.0.0
版本的预发行版。
预发行版是为发布包的无标签版本做准备的常用方法。
早期采用者可以依赖于预发行版本,以使用新包进行生成。
一般来说,对于已发布的软件,使用包及其组件的预发行版本并不是一个好主意。
最好通过在代码库中创建一个单独的分支并使用包的预发行版本,来预期新组件的影响。
区别之处在于预发行版到最终版本的更改不兼容。
另请参阅语义化版本控制 2.0.0。