软件版本编号遵循哪些规则?

时间:2010-09-29 23:18:33

标签: version-control

我一直在开发一些软件并希望给它版本号。

我该怎么做?

某些软件如何获得两个版本,如1.3v1.1

或者有些人有3个号码 - 4.0.1

这背后的方法是什么?

感谢。

3 个答案:

答案 0 :(得分:170)

我见过的常用方法是X.Y.Z,它通常对应major.minor.patch:

  • 只要引入了一些重大更改,主要版本号就会更改。例如,对软件包的大型或可能向后不兼容的更改。
  • 当引入新的次要功能或推出一组较小的功能时,次要版本号会发生变化。
  • 当向客户发布新的软件版本时,修补程序编号会发生变化。这通常适用于小错误修复等。

其他变体使用内部版本号作为附加标识符。因此,如果您有许多在版本之间进行测试的修订版,那么X.Y.Z.build可能会有大量编号。我使用了几个按年/月或年/发布标识的包。因此,2010年9月的发布可能是2010年或2010年3月的第3版。

版本控制有很多变种。这一切都归结为个人偏好。

对于“1.3v1.1”,这可能是两个不同的内部产品,这是一个与主产品不同的共享库/代码库;这可能表示主产品的版本1.3和内部库/包的版本1.1。

答案 1 :(得分:46)

您可能会发现Semantic Versioning Specification有用。

答案 2 :(得分:12)

维基百科有一个非常广泛的answer,可能是一个很好的起点