在TFS Team Build项目中构建特定版本的解决方案

时间:2010-12-27 15:58:03

标签: visual-studio-2008 tfs tfs2008 tfsbuild

我有一个TFS 2008 TeamBuild设置,我正在构建几个解决方案:

  • 解决方案A
  • 解决方案B
  • 解决方案C

我想用源代码控制的最新版本构建解决方案A和B,但对于解决方案C,我想构建一个由TFS标签定义的特定版本。

现在,我知道:

    TeamBuild的
  • /p:GetVersion:LmyLabel参数
  • .proj文件中的
  • <PropertyGroup><GetVersion>LmyLabel</GetVersion><PropertyGroup>元素

但这适用于整个构建过程和所有解决方案。

我只需要一个解决方案,最好是在SolutionToBuild元素中。

这样的事情:

<SolutionToBuild clude="$(BuildProjectFolderPath)/SolutionA.sln">
    <Targets></Targets>
    <Properties></Properties>
</SolutionToBuild>
<SolutionToBuild clude="$(BuildProjectFolderPath)/SolutionB.sln">
    <Targets></Targets>
    <Properties></Properties>
</SolutionToBuild>
<SolutionToBuild clude="$(BuildProjectFolderPath)/SolutionC.sln">
    <Targets></Targets>
    <Properties>GetVersion=LmyLabel</Properties>
</SolutionToBuild>

有什么想法吗?

1 个答案:

答案 0 :(得分:0)

使用TFS 2010时,可以从shelveset构建。这意味着系统首先获取所有最新版本的文件,然后取消搁置搁置集。

然而,如果不理想,您可以通过基于您要为解决方案C构建的版本创建工作空间来玩这个。然后创建包含解决方案A和B的已更改文件的shelveset。

另一种选择是拥有3种不同的构建定义......