6

TFS 在构建代理工作目录下生成一个发布目录:

Z:\TFSBuilds\1\box\CT\Binaries\\_PublishedWebsites

我假设这是 TFS 自动发布网站的地方。我如何使用它来自动发布网站...我们是否应该将我们的 IIS 网站引用到此目录。它的目的是什么?

4

1 回答 1

15

首先,工作目录顾名思义,是一个“工作”目录。那是构建代理下载源代码、执行编译等的地方。它还会在您再次运行构建时清除工作目录,因此当您尝试从工作目录中检索时,您可能会抓住未完成的工件。

TFS 定义了一个“放置文件夹”,一旦构建完成,它将把最终的工件复制到该文件夹​​中。您可以通过编辑构建定义来定义构建的放置文件夹:

  1. 右键单击构建并选择“编辑构建定义”。
  2. 选择“构建默认值”部分。
  3. 勾选“此构建将输出文件复制到放置文件夹”
  4. 输入构建代理的 UNC 路径以将工件复制到(确保构建代理有权访问该 UNC 路径!)

其次,关于 _PublishedWebsites。构建代理将为其构建的每个 Web 项目创建一个 _PublishedWebsites 文件夹,作为其构建工件的一部分(因此,如果您告诉它构建一个包含 2 个 Web 项目的解决方案,它将创建 [Project name A]\_PublishedWebsites 和 [Project Name B]\_PublishedWebsites)。在每个 _PublishedWebsites 文件夹中都有要放入 IIS 应用程序的内容,这与右键单击 Web 项目并选择“发布”所获得的内容相同。我通常会在构建工作流中添加最后一步,将这个 _PublishedWebsites 文件夹的内容复制到我想要的 IIS 目录中。

此链接告诉您如何添加复制工作流:TFS 2010: Copy _PublishedWebsites to test server

这里有更多关于放置文件夹的信息:http: //msdn.microsoft.com/en-us/library/bb778394.aspx

于 2012-02-02T11:28:26.390 回答