2009-12-07 45 views

回答

5

大多数软件都有版本号的层次:

  1. “营销”的版本号(如“视窗7”)
  2. 主版本号 - 通常增加时,有一个重要的新版本,打破与先前版本的某些兼容性,增加了一项重大的新功能,需要购买升级或更多。
  3. 次要版本号 - 每次向公众发布错误修复或次要功能增强时都进行升级
  4. 内部版本号 - 每次对程序进行任何更改时都应该增加,以便如果有人在每晚构建或beta测试版本中发现问题,您可以确切地确定正在测试哪个版本。这个数字通常是直接来自版本控制系统的版本号,比如Subversion,时间戳或类似的东西,如果需要的话,可以很容易地将代码回滚到该版本。
1
  1. 所有的DLL必须具有相同版本号的一个版本。
  2. 内部版本号由“MajorVersion.MinorVersion.BuildNumber.Revision”组成,通常我保持Revision Number为0.只有前3个数字被更改。
  3. 对于每晚构建,BuildNumber将自动递增。如果变化足够大,我将手动增加majorversionminorversion
0

每个签入都应该标记一个版本,使用Subversion当前版本作为构建exe版本的一部分。

+0

即使重构签入? – Benny 2009-12-07 07:46:29

+0

@本尼:是的,绝对。你永远不知道什么时候你的重构可能会无意中破坏某些东西。 – 2009-12-07 07:53:40

+0

@Benny:是的,正如musicfreak所说,每次检查都应该生成一个构建版本,并且构建版本是从checkin计数器派生的。 – 2009-12-07 10:12:44

0

为每个构建增加构建编号是非常合理的。通过这种方式,测试人员可以更准确地了解哪些构建可以发现错误,以及何时验证是否修复。

+1

绝对不会遇到你有两套不同的声明为相同版本号的二进制文件。如果您正在查看文件修改时间来追踪特定版本,那么您做错了... – 2009-12-07 07:47:02

0

我们有一个内部版本号,在每个版本(正式版或其他版本)上都会增加。我们为此使用CruiseControl.NET贴标机。

我们有一个版本号,只有在正式版本中才能增加版本号,并且我们在源代码控制中的CC.NET脚本中集中定义。

0

像大家说的那样,增加每个版本的版本号。我们在做分支时手动设置主要/次要数字,分支通常在发布前几周完成,然后该分支进行回归测试。尽管在分支上完成的构建仍然会增加。