如何区分测试版和普通版?

lke*_*ler 18 version-numbering

我大体上同意,在程序的主要版本应该是1.0,2.0...而显著的更新应该是:1.1,1.2,...,和漏洞修复应该是在第三级:1.0.1,1.0.2,... 1.0.156(如果你去过受版本之间的许多错误修复版本的困扰.


但是现在我想发布我的第一个测试版,它将是导致版本发布的一系列Betas之一1.0.

具体来说,对我而言,将我的Beta版本编号大于我正在开发的编号,例如1.0.1最多1.0.15(如果我有15个测试版),然后跟随它,对我没有意义1.0.

但是使用少于数字的数字1.0似乎很尴尬,例如0.9.1...... 0.9.15如果我开始使用1.9.1... 1.9.15作为版本的Betas ,将会引起混淆2.0.

有关:

如何做版本号?


仅供参考,在您的帮助和更多信息的良好链接之后,这就是我决定的.

对于我的alpha版本,我一直在0.7,0.8,0.9,0.91 ......高达0.98.

我知道我可以做1.0 beta 1,这是"标准"方式.但考虑到所有因素,我将使用:0.99 beta 1,0.99 beta 2 ......在我发布1.0之前.

如果我预先发布我的2.0版本,我可能会按照这种模式称之为1.99 beta 1,1.99 beta 2等.

希望这个问题和答案将帮助您决定您的计划.

ctf*_*ord 18

我认为您应该从发布状态中分离出您的版本号.

Betas应该始终在版本之后有"beta".用户不必对编号方案进行反向工程以确定版本的稳定性.

因此,在1.0版本之前,您应该拥有1.0 beta 1,1.0 beta 2等.这样可以让用户更清楚地了解测试版的主要版本,并避免与您在此期间可能发布的任何维护版本混淆.

重要的是你需要在bug修复版本(应该增加稳定性)和beta版本(可能会降低稳定性)之间进行区分.


Xio*_*iov 5

如果您使用的是旧版本语义版本控制(从2011-03-27之前),则此部分是相关的:

可以通过在补丁版本之后立即附加任意字符串来表示特殊版本号.字符串必须只包含字母数字加上破折号[0-9A-Za-z-],并且必须以字母字符[A-Za-z]开头.特殊版本满足但优先级低于相关的普通版本.优先级应该由字典ASCII排序顺序决定.例如:1.0.0beta1 <1.0.0beta2 <1.0.0.

  • [SemVer 已更新至 2.0.0](http://semver.org/spec/v2.0.0.html),现在预发布需要破折号将扩展名与版本号分开:[`xyz-&lt;预发布&gt;`,其中预发布是点分隔的字母数字标识符](https://github.com/mojombo/semver/blob/master/semver.md#backusnaur-form-grammar-for-valid -semver-版本)。 (4认同)