版本号背后的含义(即0.1,0.10.10,1等)

时间:2015-01-02 02:58:27

标签: functional-programming logic version

版本如何编号?进入下一个版本,增量等背后的正确理念是什么?

例如,我经常看到v0.1,v0.2,v0.34567等。我认为这些是处于测试阶段的软件,尚未完成第一个版本。

但是也有许多软件是v0.10.11,等等它们是如何工作的?

2 个答案:

答案 0 :(得分:2)

没有特定的标准 - 任何人都可以遵循任何计划(或缺乏计划)。这取决于公司政策,发展标准或您所处的任何指导方针。

有一些流行的标准。我们尝试遵循语义版本标准。基本租户包括(引用):

  

给定版本号MAJOR.MINOR.PATCH,增加:

     
      
  1. 进行不兼容的API更改时的MAJOR版本
  2.   
  3. 以向后兼容的方式添加功能时的MINOR版本
  4.   
  5. 当您进行向后兼容的错误修复时的PATCH版本。
  6.   

链接:

答案 1 :(得分:1)

存在相互竞争的标准,这让我感到非常难过,特别是在一个git很受欢迎的世界里。

如上所述,SymVer有很多帮助,但很多流行的软件都没有使用它。

不幸的是,这在处理发行版时没有多大帮助,发行版将修补程序应用于特定版本的软件,有效地改变了它的版本。

我所看到的最接近“正确”的是由NixOS完成的。每个版本的软件都经过哈希处理,所有修补程序都应用,并且每个最终结果都有不同的哈希,对Git中的任何更改进行排序。

结果输出也会有所不同,唯一地将其识别出来。

在采用该方法之前,它是一个免费的版本,并且版本控制不是一致的。