2

我在使用 TFS 时遇到问题。当我们有 TFS2008 时,构建机器能够在创建新构建之前从构建代理文件夹中清除文件。但是,在迁移到 TFS2010 之后,构建机器无法清除此文件夹,并且我们正在使用已从源代码管理中删除的旧文件进行构建。

有没有办法恢复这个功能?我们目前正在使用 TFS2008 构建脚本和TFS2010中的 UpgradeTemplate.xaml。

谢谢

4

2 回答 2

1

在您的 TFS 构建定义中,“进程”选项卡上的“清洁工作区”设置为什么?

它有三个选项:

  • 全部
  • 输出
  • 没有任何

每个选项的解释(取自 TFS):

设置为 All 以删除所有现有的输出和源并进行完全重建;输出删除所有现有输出,但仅获取自上次构建以来已更改的源文件(增量获取);或 None 保留现有的输出和源并逐步构建任何更改。

您应该将其设置为All, 以确保您每次都执行干净的构建。

于 2012-05-11T13:41:24.777 回答
1

我发现的唯一其他帖子没有答案。因此,我恢复为在构建脚本的 BeforeEndToEndIteration 级别运行 RMDIR 命令。

<Target Name="BeforeEndToEndIteration"> <Exec WorkingDirectory="S:\src" Command="RMDIR /s /q &quot;S:\src\Sandbox_awdbu\&quot;"/> </Target> 此命令将在构建服务执行 Get Latest 命令之前删除构建代理文件夹。

这不是一个很好的解决方案,但它有效。此解决方案将起作用,但我建议移至模板而不是保留旧的 TFS2008 构建脚本。

于 2012-05-11T15:10:45.263 回答