【问题标题】:Automatic Versioning in TFS BuildTFS 构建中的自动版本控制
【发布时间】:2018-05-21 17:27:06
【问题描述】:

我不确定我是否能很好地解释这个问题。好吧,我们将 TFS 用于我们的建筑。在我们的 VS 解决方案中,还有一个 installshield 设置项目。

好吧,有时我们的团队成员忘记了增加产品的版本,为什么我们要自动生成版本号,例如 3.7.1.* 所以当我们构建项目时,我们的产品 dll/exe 的版本将是 3.7.1.5655

假设我们已经创建了以下版本

3.7.1.1234
3.7.1.5678
3.7.1.9134

我们将产品版本 3.7.1.5678 提供给我们的客户。又过了一会客户说这个版本有bug,版本号是3.7.1.5678。

所以,正如我之前所说,我们将版本号格式设置为 3.7.1.* 并且我们总是这样提交,因此 assemblyinfo.cs 文件不会被更改。当客户说3.7.1.5678版本有问题时。我们如何在 tfs 提交中找到客户拥有的相关版本。假设我们在同一天提交了几次,但我们看不到(或者我不知道)版本号 3.7.1.5678 的存储位置。

嗯,我需要找到真正的提交并在这个时间项目上工作,但我不知道它是哪个提交。

我的问题是你如何解决这个问题?

我希望我能解释一下。

我们有 TFS 版本 16.122.26918.3,我们主要使用 Visual Studio 2017

【问题讨论】:

  • 嗨 ertan2002,对此有任何更新,我的解决方法是否有效?
  • 您好 Patrick,我已经用另一种方式解决了这个问题。我创建了一个 powershell 脚本。该脚本通过读取 assemblyinfo.cs 自动增加版本号,然后 commit-push 到 git。之后,我开始构建步骤,并以增加的数量构建项目。这对我很有用。

标签: visual-studio tfs msbuild versioning


【解决方案1】:

你可以找到对应的build版本号是3.7.1.5678。

对于特定的构建,很容易获得相关的变更集/提交。

然后您可以将该变更集/提交从 TFS 下拉到您的本地工作区,然后处理错误。

不确定您的内部版本号是什么样的,最好使内部版本号的一部分与上一个版本号(5678)相同,例如$(BuildID)的用法。

$(BuildID) 是一个内部不可变 ID。

【讨论】:

  • 您的回答对于这种情况似乎也是正确的。我接受它作为答案。感谢您的关注。
猜你喜欢
  • 1970-01-01
  • 2011-01-22
  • 2016-07-30
  • 2012-07-06
  • 1970-01-01
  • 2023-03-18
  • 1970-01-01
  • 2018-09-27
  • 1970-01-01
相关资源
最近更新 更多