You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

TFS2017.2构建每次均执行“清理”(拉取新代码)原因排查

排查TFS 2017构建每次全量拉取代码的问题

嘿,我来帮你梳理下这个问题——既然你已经把「获取源」和构建步骤的Clean设为false了,那大概率是下面这些容易被忽略的配置环节出了问题:

  • 代理工作目录的全局清理设置
    TFS构建代理本身可能有全局的清理策略,会覆盖你在单个构建定义里的设置。你可以:

    1. 找到代理安装目录下的agent.config文件,检查其中的cleanWorkingDirectory参数是否被设为true;
    2. 登录TFS服务器的代理管理页面,查看对应代理的设置,是否勾选了「每次构建后清理工作目录」的选项。
  • 「获取源」的细节配置遗漏
    除了Clean选项,还要确认:

    • 「获取模式」是不是被误改成了**「获取全部」**(默认应该是「增量获取」);
    • 有没有勾选「在每次构建前重置本地仓库」,这个选项会强制丢弃本地缓存,重新拉取全部代码。
  • 构建保留策略的影响
    如果构建定义的「保留策略」设置得过于严格,比如勾选了「删除旧构建的工作目录」且保留的构建数量极少,代理会因为没有之前的缓存目录,导致每次构建都只能全量拉取。你可以去构建定义的「保留策略」页面检查相关设置。

  • 代理工作目录的权限问题
    如果运行构建代理的服务账户没有对代理工作目录的读写权限,增量缓存无法被正常保存,每次构建都会被迫重新拉取代码。可以右键代理工作目录,检查文件夹权限,确保代理账户拥有完全控制权限。

  • 版本控制客户端的手动排查
    你可以手动进入代理工作目录下的代码仓库文件夹,运行对应的版本控制命令测试增量获取是否正常:

    • Git仓库:执行 git fetch
    • TFVC仓库:执行 tf get /recursive /noprompt
      如果手动执行也无法增量获取,可能是代理和TFS服务器之间的同步出现了异常,需要进一步排查服务器端的仓库状态。

内容的提问来源于stack exchange,提问作者Ben_G

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.19 08:37:58