2011-08-18 95 views
1

根据建立日期/名称,我使用由Wintellect的John Robbins提出的方法描述了here,我具有自动构建编号设置。所以版本/资源文件在编译时自动创建,但未签入。
我不知道如何解决重建历史版本(基于标签)的问题,并在其中有原始版本号/名称。是否有可能检测MSBuild的'GetVersion'参数并尝试从它重新创建原始的构建名称?
无论如何这是一个理智的方法吗?你看到了什么替代品?通过带有版本号的TFS重建历史版本

回答

1

这并不容易建立一个特定的变更(虽然possib如果您将变更集编号传递到您的构建脚本并修改构建的“获取最新”部分)。

但是,处理此问题的一种更简单的方法是创建代码的一个分支。您可以在特定的日期或变更集中进行分支,这将从该时间点创建代码副本。您的构建脚本可以指向此代码。

对于您的版本问题:您可能会发现唯一明智的方法是硬编码所需的版本号。我对你的版本编号策略的理解是,它不涉及你可以从源获得的任何东西(例如变更集编号,日期或文件内容),并且它没有签入 - 所以重新计算它会相当复杂!

+0

分支方法是我推荐的。您永远无法真正确定使用变更集版本或标签以TFS的方式实际选择哪些版本。分支机构虽然便宜且确切,但 –

+0

@tbergstedt能否提供一些链接来描述此变更集/标签行为?这听起来像是一个人试图回到以前的版本的一个主要问题 – Raber

+0

这里有一个简短的解释:“......标签并不代表时间点,而是一系列时间点,这使得它非常很难将其显示在与变更集混合的列表中,因为列表中没有“正确”排序,因此我们将变更集列表和标签列表分开处理。“_从http://blogs.msdn。 com/b/bharry/archive/2005/11/18/494439.aspx –

-1

您提出的问题重建历史建筑,但它实际上重建历史变化设置或标签,我知道你的意思,但我想告诉你我需要说什么,所以我没有看到我们需要建立一个具有特定名称的标签标签或更改集可以根据需要具有许多构建,并且因为我们在构建编号中使用日期和时间,所以具有当前构建时间而不是旧构建的时间和日期的现实更加现实

感谢

M.Radwan

+2

你能否重写你的答案以包含多个句子?我不确定它有多大的意义! –