TFS构建:在程序集的"构建号"字段中包含分支名称

Rob*_*evy 8 .net versioning tfs assemblies tfsbuild

我希望能够查看一个程序集并快速确定它是由哪个分支构建的.

将TFS Build配置为在其创建的程序集的Build Number字段(或更合适的字段)中包含当前分支的名称的最佳方法是什么?

ren*_*ene 4

查看http://msbuildtasks.tigris.org/中的版本任务

它将使您能够在构建时更新 assemblyinfo.cs。

仍然留下“如何”来识别分支......

冒着对版本编号进行宗教辩论的风险,您可以将major.minor.build.revision 部分的一部分奉献给分支。例如,major.minor 只是跟随您的“外部/商业”版本号,build 是 TFS 的内部版本号,修订版 1 表示您的主分支,修订版 2 表示某个分支。您还可以使用其他程序集版本属性(例如 AssemblyInformationalAttribute)来在其中存储分支 ID。

我不完全了解如何检测您所在的分支,但最坏的情况只是获取当前目录并应用一些逻辑来推断分支名称。tf 分支的输出。命令还应该为您提供当前工作区的分支名称,但您需要一个自定义任务来仅提取​​第一行。

这不是一个即插即用的答案,但它可能会给您带来正确的方向。