Visual studio TFS生成已断开-源目录上的目录不是空的

Visual studio TFS生成已断开-源目录上的目录不是空的,visual-studio,visual-studio-2012,build,tfs,Visual Studio,Visual Studio 2012,Build,Tfs,我的构建(TFS2010)有问题。最近,这个构建的一切都很顺利,直到今天,我现在在构建一开始就发现了一个错误: Delete Sources Directory (00:00) The Directory is not empty. 我查看了服务器,发现\builds\1\myproject\sources\为空。。里面什么都没有!错误提示情况并非如此,但它肯定是空的 我想知道在这种情况下它是否应该是空的?有谁能告诉我,为了让构建再次运行,我可能会采取什么行动 这是失败生成的日志: Overa

我的构建(TFS2010)有问题。最近,这个构建的一切都很顺利,直到今天,我现在在构建一开始就发现了一个错误:

Delete Sources Directory (00:00) The Directory is not empty.
我查看了服务器,发现\builds\1\myproject\sources\为空。。里面什么都没有!错误提示情况并非如此,但它肯定是空的

我想知道在这种情况下它是否应该是空的?有谁能告诉我,为了让构建再次运行,我可能会采取什么行动

这是失败生成的日志:

Overall Build Process
00:00
Update Build Number
00:00
Create the Drop Location
00:03
Run On Agent (reserved build agent Default Agent - server1)
00:00
Delete Test Results Directory
00:00
Delete Binaries Directory
00:00
Delete Workspace
00:00
Delete Sources Directory
 The directory is not empty.

非常感谢您的帮助

如果其他进程在文件系统上有句柄,通常会发生这种情况。浏览器或命令提示窗口通常是罪魁祸首

除了有人处理subdir或该dir中的任何文件的情况之外-当目录(或任何子目录)中有路径长度>260个符号的文件时,可能会发生这种错误。在这种情况下,您需要删除“\\?\C:\mydir”而不是“C:\mydir”。大约260个符号限制了您的阅读能力。

通常是上面提到的文件句柄,但如果您找不到罪魁祸首,删除“C:\agent\u work\#NumberOfBuildDefinition”将释放该符号,并意味着生成可以再次发布


这发生在您的构建定义中,存储库设置“Clean”设置为“true”,而“Clean options”设置为“Sources”,因此在每个新构建中,它都会尝试从相关文件夹中删除所有文件。

在打开“c:\”中的一个部署文件夹时,我遇到了这个问题。因此,关闭文件夹并开始您的构建将正常工作。谢谢这个问题,我刚刚删除了构建服务器上失败的构建的存放文件夹。我在事件日志中没有找到任何内容。 这对于选择将生成的输出复制到生成服务器上的文件夹中的用户有效。 我的配置:VS2015/TFS2015
生成服务器:Windows server 2008 R2

是否检查生成中的“源设置”选项卡?确保源代码管理文件夹和生成代理控制文件夹映射正确。检查最近是否有任何变化。嘿,一切看起来都和工作时一模一样。查看sources文件夹的备份,我发现导致错误的第一个生成是在生成运行后删除文件时抱怨权限问题(导致生成停止)。“源”文件夹当时不完整,现在为空。请手动删除e\builds\1\myproject文件夹中的文件,并在“生成过程”选项卡部分中,将“清理工作区”更改为“全部”(如果已设置为输出)。尝试构建。如果正在工作,请将“清理工作空间”属性更改为“以前的设置”。+1。最常见的情况是,您在构建文件夹中打开了一个文件资源管理器,关闭它就可以解决问题。在最坏的情况下(不太可能如此糟糕),您可能需要重新启动服务器以清除所有未关闭的句柄。跟踪此问题的一个好工具是SysInternals Process Explorer()。您可以选择“查找文件句柄或DLL…”并输入生成目录的部分路径。它将告诉您在该路径上有句柄的所有进程,以便您确切地知道关闭或终止什么。它为我节省了很多不必要的重新启动。