为什么自动增加构建版本号?

时间:2015-09-17 06:47:29

标签: .net tfs

问候,这不是关于版本的问题,而是一般性讨论关于:为什么自动增加构建版本号?它有用于任何实际目的吗?

说,我在1个月前编码代码,假设版本#是1.0.0.0

今天我重建它,相同的旧代码,但ver#是1.0.123.0

对我来说,与1个月前相比,这是一个相同的旧装配,但为什么不同的版本?

imo,版本号应仅在代码更改时自动更改,或者任何会影响代码行为的更改。

ps:要设置TFS,思考这个

1 个答案:

答案 0 :(得分:1)

这一切都取决于您增加版本号的标准。大多数人坚持在每个构建规则中递增,因为最简单的实现,但您可以使用不同的规则。 很高兴选择版本控制标识符(如变更集编号或Commit Sha),但除了AssemblyFileInformationalVersion等描述性地点外,几乎不可能使用它们。

那说只有当代码改变时才增加版本号是可行的,但是需要一定的努力并且很快就会变得很难。 E.g。

  • 你怎么知道代码已经改变了?
  • 在构建成功后,您在哪里存储版本号?
  • 您是在装配级别还是按产品/包装跟踪数字?
  • 不同的分支机构有相同的版本号?

我在一系列帖子中描述了MSBuild / TFS技术(firstsecondthird)。您可以看到它的主要缺点:构建服务器上存在版本号;如果您丢失了机器,则必须手动恢复号码系列。

您可以在GitVersion找到其他有趣的想法。这里的工具在提交历史的基础上计算版本号。