Team Foundation Build 使用 MSBuild 引擎。Team Foundation Build 过程由对应于 MSBuild 项目文件架构的一组 XML 文件控制。这些 XML 文件中的以下元素对于生成过程而言十分重要:
MSBuild 脚本文件可以导入其他脚本文件。例如,您可以在一个文件中定义一个常见配置,然后将它包含在其他配置中。有关更多信息,请参见 如何:在多个项目文件中使用同一目标。
两个文件控制 Team Foundation Build 过程:
-
Microsoft.TeamFoundation.Build.targets
该文件定义 Team Foundation Build 包含的一组默认任务和目标,如 Clean、DropBuild 和 Compile。每个目标包含为该特定目标调用的任务。该文件中的某些目标需要与其他目标构成目标链,按特定顺序执行。例如,目标 Compile 依赖于目标 BeforeCompile,以便在 Compile 之前执行目标 BeforeCompile 中定义的任何任务。并非该文件中定义的所有目标都必须在每次生成中执行。例如,桌面生成不执行 Clean 目标。
Visual Studio Team System 附带有 Microsoft.TeamFoundation.Build.targets,该文件位于目录 MSBuildExtensionsPath\Microsoft\VisualStudio\v8.0\TeamBuild 中。该文件在计算机上只有一个副本,并且计算机上运行的所有生成将共享它。
要点 |
|---|
| 不要修改 Microsoft.TeamFoundation.Build.targets。如果修改该文件,将影响所有生成类型。若要自定义个别生成类型,必须修改 TfsBuild.proj 文件。 |
-
TfsBuild.proj
这是 Team Foundation Build 的主配置文件,每个生成类型各有一个文件。“新团队项目生成类型创建向导”中提供的配置参数存储在该文件中。这些参数包括生成计算机、生成所在目录、放置位置以及生成的解决方案。当用户定义一个新的生成类型时,“新团队项目生成类型创建向导”将创建该文件。该文件导入 Microsoft.TeamFoundation.Build.targets 并将它传递给 MSBuild。对该文件所做的任何更改都将影响这一生成类型的生成。该文件存储在源代码管理的文件夹 $\MyProject\TeamBuildTypes\BuildType 下,其中 MyProject 是团队项目的名称,BuildType 是生成类型的名称。
-
TfsBuild.rsp
这是“新团队项目生成类型创建向导”生成的空文件。该文件可用于指定自定义记录器或重写 MSBuild 属性。有关更多信息,请参见 MSBuild 响应文件。
目标、属性和任务
请参见