使用升级模板定义生成

在 Visual Studio Team Foundation Server 2010 中,您可以使用升级模板来继续使用旧式生成定义。 具体而言,您可以使用此模板来运行以下类型的生成对象:

  • 通过使用 Visual Studio Team System 2008 Team Foundation Server 创建的生成定义。

  • 通过使用 Visual Studio 2005 Team Foundation Server 创建的生成类型。

当首次升级到 Team Foundation Server 2010 时,系统将会为您的系统中的每个旧式生成定义和每个生成类型自动创建一个升级模板生成定义。

另外,当您使用早期版本的 Visual Studio ALM 在运行 Team Foundation Server 2010 的服务器上创建生成定义或生成类型时,系统将会自动创建升级模板生成定义。

若要修改这些旧式生成对象的大多数方面,必须修改 TFSBuild.proj 文件。 有关更多信息,请参见 Team Foundation Build 目标、任务和属性。 但是,您可以通过在团队资源管理器中打开“生成”节点来更改生成定义对象中的某些设置。本主题将对这些设置进行说明。

所需权限

若要执行此过程,您的**“编辑生成定义”权限必须设置为“允许”**。 有关更多信息,请参见 Team Foundation Server 权限

修改升级模板生成定义

  1. 在团队资源管理器中,展开要在其中定义生成的团队项目,然后展开**“生成”**节点。

  2. 右击要修改的生成定义,然后单击**“编辑生成定义”**。

  3. 在**“生成默认值”选项卡上,打开“生成控制器”**菜单,然后选择生成控制器。

  4. 单击**“进程”**选项卡。

  5. 确保**“升级模板”**出现在“生成过程模板”之下。

  6. 展开**“必需”**节点。

  7. 在**“配置文件夹路径”**中,确保正确指定了包含 TFSBuild.proj 文件的文件夹的路径。

  8. 使用本主题后面的信息完成那些可以提供您要放入此生成定义中的功能的相应字段。

  9. 完成**“过程”选项卡中的字段后,根据需要修改“触发器”“工作区”“生成默认值”“保留策略”**选项卡中的字段。

    有关更多信息,请参见创建基本生成定义

主题内容

  • 关于升级模板生成过程参数

  • 指定日志记录详细程度

  • 指定哪些生成代理处理您的生成

  • 指定生成代理时间限制

  • 指定高级生成过程参数

关于升级模板生成过程参数

本主题说明如何通过使用基于升级模板的生成的生成过程参数来修改生成。 只要满足以下条件,此信息就应与 Visual Studio Application Lifecycle Management (ALM) 匹配:

  • 您正在处理的团队项目是从 Visual Studio ALM 附带的两个过程模板之一创建的:MSF for Agile Software Development v5.0 或 MSF for CMMI Process Improvement v5.0。

  • 团队中的任何人都未移除或自定义升级模板。

指定日志记录详细程度

若要指定生成结果窗口中显示的日志记录的详细级别,请展开**“基本”节点,然后在“日志记录详细程度”**列表中选择一个值。 下表列出了日志记录详细程度值及其相应效果。

生成错误

生成警告

高重要级别

生成

Messages

普通重要级别

生成

Messages

低重要级别

生成

Messages

工作流活动属性(输入和输出)

最低

Y

N

N

N

N

N

正常

Y

Y

Y

N

N

N

详细

Y

Y

Y

Y

N

N

诊断

Y

Y

Y

Y

Y

Y

您指定的日志记录详细程度值还会影响来自 MSBuild 的消息的详细程度。 有关更多信息,请参见 MSBuild 命令行参考

有关生成报表的更多信息,请参见查看生成结果窗口

指定哪些生成代理处理您的生成

若要指定使用哪些生成代理来处理生成,请展开**“高级”节点,再展开“代理设置”**节点,然后填写以下框之一:

  • 名称筛选器:您可以通过在此字段中键入代理名称,来筛选用于处理此生成定义的生成代理。 还可以使用 * 和 ? 通配符指定一系列名称。 例如,可以指定 CI* 来指定名称以字符 CI 开始的任何代理。 符合此条件的代理包括 CI、CI1 或 CI_Agent2。

  • 标记筛选器:指定一个或多个标记,以确保只有包含匹配标记的生成代理才会运行此生成。 例如,在生成计算机上设置专用于处理封闭签入生成的生成代理。 将封闭的标记应用到此生成代理。 最后,将封闭标记应用到生成定义,以便仅由同样使用封闭标记进行标记的代理处理生成定义。 若要指定标记,请单击省略号按钮 (...)。

    提示

    可用于处理此生成的生成代理池由您为此生成定义指定的生成控制器确定。 若要修改生成控制器,请单击“生成默认值”选项卡,打开“生成控制器”菜单,然后从该菜单选择一个生成控制器。

指定生成代理时间限制

若要指定时间限制,请展开**“高级”节点,再展开“代理设置”**节点,然后指定以下参数。

若希望...

然后设置此参数...

使用本指南...

指定允许生成代理处理生成的最长时间

最长执行时间

按照 hh:mm:ss 格式键入时间跨度值。 例如,如果指定值 04:30:15,并且在 4 小时 30 分钟 15 秒之后未完成生成代理,则该生成将由于超时错误而失败。 如果想要生成代理处理生成时不受时间限制,则指定值 00:00:00。

指定允许向生成代理指派生成请求的最长时间

最长等待时间

按照 hh:mm:ss 格式键入时间跨度值。 例如,如果指定值 01:30:45,并且在 1 小时 30 分钟 45 秒之后尚未将生成指派给生成代理,则该生成将由于超时错误而失败。 如果您想要生成控制器查找用于处理此生成定义的生成代理不受时间限制,则指定值 00:00:00。

指定高级生成过程参数

若要成功完成一些不太典型的方案,必须修改**“高级”**节点中的生成过程参数。

若希望...

然后设置此参数...

使用本指南...

指定二进制文件在生成后所在的子目录

二进制文件子目录

如果您未指定子目录,则系统将使用名为 Binaries 的子目录。

使用本地计算机上存在的生成类型定义

不下载生成类型

如果您要使用本地计算机上存在的生成类型定义,而不想从 Team Foundation Server 下载定义,请将此标志设置为“True”。 所使用的本地路径是生成类型的本地工作区。

此参数通常将暂时设置为“True”,以便您可以调试 TFSBuild.proj 文件。

为单个项目生成错误和警告日志文件

每个项目的日志文件

将此值设置为“True”,以便为单个项目(而不是为单个的平台和配置组合)生成错误和警告日志文件。

指定要传递到 MSBuild 的命令行参数

MSBuild 参数

如果生成过程需要将参数传递到 MSBuild,则在“MSBuild 参数”参数中键入这些参数。 有关更多信息,请参见 MSBuild 命令行参考

指定用于处理生成的 MSBuild 版本的位数

MSBuild 平台

指定下列值之一:

  • 如果希望以生成代理上安装的 Team Foundation 生成服务的同样 CPU 位数来运行 MSBuild,则指定“自动”

  • 指定“X86”可通过始终使用 32 位版本的 MSBuild 来处理此生成。

    由于 Visual Studio 2010 作为 32 位应用程序运行,因此在运行 64 位版本的 Team Foundation 生成服务的生成代理处理您的生成时,可能会遇到问题。通过指定“X86”,您可以解决此类问题。

  • 指定“X64”可通过始终使用 64 位版本的 MSBuild 来处理此生成。

    注意注意
    如果指定此值,您应确保由 64 位生成计算机承载的生成代理来处理您的生成(例如通过使用本主题中前面所述的标记)。否则,生成将失败。

使 MSBuild 以递归方式获取和使用“配置文件夹路径”中的文件

递归类型

指定下列值之一:

  • 一级 如果“配置文件夹路径”中指定的文件夹包含 MSBuild 要处理的文件。

  • 完整 如果“配置文件夹路径”中指定的文件夹或该文件夹的子目录包含 MSBuild 要处理的文件。

指定用于映射工作区和生成的子目录

源子目录

将此值设置为使用此生成计算机的生成代理的相应源子目录。 如果您未指定子目录,则系统将使用名为 Sources 的子目录。

指定用于存储测试结果的子目录

测试结果子目录

将此值设置为使用此生成计算机的生成代理的相应测试结果子目录。 如果您未指定子目录,则系统将使用名为 TestResults 的子目录。