您首选的产品版本号是什么样的?为什么?

时间:2009-08-13 16:01:36

标签: versioning

是Major.Minor.Release - IBM风格(例如1.2.3)? 这是一年吗? (Windows '98) 还有别的吗?

参考: http://en.wikipedia.org/wiki/Versioning

目前我用 major.minor.release.internal释放

实施例 01.12.02.19

对于下一个产品,我想让它变得更简单 版本生成

实施例 V1-B22

在我最终确定之前(因为我将不得不忍受我对产品剩余部分的决定)我想尽可能多地获得观点。

非常感谢!

13 个答案:

答案 0 :(得分:6)

[major].[minor].[patch]

例如:2.0.4

当产品具有许多新的主要功能时,Major会增加;当添加一些次要功能时,minor会增加;当没有添加新功能时补丁会增加,但修补了错误修复或安全问题。

我更喜欢这个,因为它简单,高效,大多数人都能理解这些版本号而不需要解释,甚至是非开发人员。

答案 1 :(得分:1)

我喜欢两种不同的方法。

第一种方法 - major.minor.date_of_build

所以,像:3.0.20090120。这样,如果我需要知道特定版本何时发布,我只需要查看最后一个数字。

第二种方法 - major.minor.repository_value

我喜欢这个,因为我总能在我的存储库中找到它。

希望这有点帮助。

答案 2 :(得分:1)

我会选择产品版本+版本。我认为人们倾向于过度思考这个问题。设计一个简单的方案,您的用户可以轻松找到两个问题的答案:

  1. 我是否拥有此产品的最新版本?
  2. 我应该考虑升级到新版本吗?
  3. 这假设中间版本是免费升级,并支付主要版本更改。

答案 3 :(得分:1)

我更喜欢以下任何变体:

[major].[minor].[wayToTrackAnInternalBuild]

例如,使用内部版本号:

[major].[minor].[buildnumber]

使用存储库修订:

[major].[minor].[revision]

或日期:

[major].[minor].[date]

它的常规至少有一个主要和次要数字。如今,带有“v”的前缀似乎不太常见。

答案 4 :(得分:0)

我主要开发webapps,对我而言,它只是页面底部的一个小转速#xxx(这是一个程序化检索的mercurial版本号)

答案 5 :(得分:0)

TeX and METAFONT使用的那些。

答案 6 :(得分:0)

这是供内部还是外部使用?

对于前者,我喜欢有major.minor-timestamp。后者,我倾向于使用产品名称Major.Minor。

//internal
2.8-1234567890

//external
Wordpress 2.8

答案 7 :(得分:0)

我们倾向于每年发布一个主要版本,其间有少量版本。因此,我们的启动画面和关于框将程序版本显示为“2009”,“2009a”等。

我们还有内部版本号,每次我们为QA进行自动每日构建时都会增加。所以我们的完整版本号可能类似于2009a.78。

对于Windows版本资源(xxxx格式),我们的2009a.78将是2009.1.78。*(其中'*'是Visual Studio的“基于当天当前时间的自动编号” - 类似于18230)。

答案 8 :(得分:0)

[主要]。[次要] [创建日期]。[DayBuildNo]

其中BuildDate是反向数字,即090813和日期内部版本号可以是任何内容 - 从午夜开始的分钟是好的甚至是手动的记录

对于内部软件,我倾向于放弃主要/次要 - 只是能够浏览启动画面并查看版本的制作时非常有用,如果需要报告错误,保持简短可以帮助用户。

答案 9 :(得分:0)

我使用以下表格:

[Year].[Month].[Revision]
在我的情况下,

[Revision]是Subversion版本号。

这种风格可以帮助我们的客户轻松区分产品版本。修订号可以帮助我们的开发人员轻松找到合适的来源来修复错误。

答案 10 :(得分:0)

我使用像DevExpress那样的东西。我的格式是[年末2]。[月]。[日]。[IncrementalBuildNumber],即9.8.12.2569。内部版本号从1开始,并在我的应用程序的实时内递增。

DevExpress基本上是[年]。[次要为1]。[修订],即2009.1.5是他们当前的版本,它们等同于2009年发布日历第1卷的第5次修订。

答案 11 :(得分:0)

在内部,我们使用Major.Minor.Patch.Year。 我们的客户看到的是Year.Release for the Patch(如果需要),即2008.4(去年第四次发布)或2009.2 B,如果我们需要修补它。

编辑(忘了这部分): 我们之所以有区别?在内部,我们自首次发布以来根本没有更改系统。在外部,高级管理层希望以这种方式展示。

答案 12 :(得分:0)

我喜欢Knuth与LaTex一起使用的方式:π

3
3.1
3.14
3.141

我相信除了Knuth之外没有人会使用它,而我可能会这样:)