演练:配置和使用桌面生成
更新:2007 年 11 月
在 Team Foundation Build 中,开发人员可以在签入更改之前在本地生成团队项目并运行测试。本演练演示如何执行桌面生成。
桌面生成差异
桌面生成方案的行为与公共生成不同,差异如下:
仅执行编译和测试(如果启用)。
桌面生成不会执行其他公共生成步骤,如同步、清除、代码改动、复制到放置位置、工作项更新和创建新的工作项。
使用默认的 MSBuild 记录器,并且将生成输出写入控制台。
系统将不会发布生成结果和测试结果数据或将结果数据推入仓库。
桌面生成结果
Team Foundation Build 记录器未用于桌面生成。因此,系统不会将数据推入数据库以创建状态报告。若要查看桌面生成的结果,必须重定向默认的 MSBuild 记录器输出文件并查看该文件。可以使用 MSBuild 命令的详细选项控制 MSBuild 记录器的详细信息。有关更多信息,请参见MSBuild 中的日志记录概述。
先决条件
Visual Studio Team System.
一个到 Team Foundation Server 的连接和至少一个现有团队项目。有关更多信息,请参见演练:加入团队项目和如何:创建团队项目。
至少定义一个生成定义。有关更多信息,请参见演练:在 Team Foundation Build 中创建生成定义。
必需的权限
若要完成此演练,您必须将 Team Foundation Server 中的“启动生成”权限设置为“允许”。有关更多信息,请参见 Team Foundation Server 权限。
执行桌面生成
在本地手动从 Team Foundation 版本控制 同步团队项目根目录。
例如:
Team Foundation 版本控制 服务器具有以下默认结构:
说明: 此结构可能会与您的 Team Foundation 版本控制 服务器上的结构有所不同。
$\
Portfolio Project1
** Team Build Types**
** Main**
** TFSBuild.proj**
** Solution1**
** Solution2**
** Solution3**
将团队项目 1 同步到本地目录 C:/temp 后,本地目录结构如下:
C:/Temp
** /Portfolio Project1**
** /Team Build Types**
** /Main**
** /TFSBuild.proj**
** /Solution1**
** /Solution2**
** /Solution3**
重要说明: 本地目录结构必须与服务器结构完全匹配,才能正确运行生成。
通过在命令行上运行 MSBuild 启动 Team Foundation Build 进程。键入以下内容:
C:\temp\Portfolio Project1\Build Configurations\Main> MSBuild TeamBuild.proj
由于在 TFSBuild.proj 中提及的默认解决方案根目录是“…/..”,因此 TFSBuild.proj 中解决方案的路径得以解析。此外,传递到 MSBuild 任务的解决方案将此解决方案根目录属性用作 ($solutionroot)/Solution1。因此,在这种情况下,解决方案根目录的值变为 C:/Temp/Portfolio Project1。
说明: 可根据需要使用 /p 开关修改解决方案根目录。有关更多信息,请参见 MSBuild 属性 的“从命令行设置属性”部分。