使用git运行TFS-2013时经常出现错误

使用git运行TFS-2013时经常出现错误,git,tfsbuild,Git,Tfsbuild,我们已将TFS-2013配置为使用git存储库。大多数情况下,所有这些都可以正常工作,但我们会遇到间歇性的构建错误——随着时间的推移,它们似乎变得更加频繁 出现问题时,我们可以在构建日志中找到以下内容: 异常消息:libgit2引发错误。类别=操作系统 (错误) 无法删除目录。文件 'C:/Builds/1/MyTool/MyTool\u CI/src/.git/objects/pack/pack\u git2380' 无法删除:进程无法访问该文件,因为它已被删除 正在被另一个进程使用 (输入L

我们已将TFS-2013配置为使用git存储库。大多数情况下,所有这些都可以正常工作,但我们会遇到间歇性的构建错误——随着时间的推移,它们似乎变得更加频繁

出现问题时,我们可以在构建日志中找到以下内容:

异常消息:libgit2引发错误。类别=操作系统 (错误)

无法删除目录。文件 'C:/Builds/1/MyTool/MyTool\u CI/src/.git/objects/pack/pack\u git2380' 无法删除:进程无法访问该文件,因为它已被删除 正在被另一个进程使用

(输入LibGit2SharpException)

异常数据字典:

libgit2.code=-1

libgit2.category=1


什么可能导致这些错误?

这似乎是一个正在进行的错误,如下所示:

您能否修复VS2013 RTM并重试?此外,您还可以查看事件查看器,查看是否有任何有用的信息,或者在上面提到的其他机器上进行尝试


我注意到,当问题发生时,Process Explorer会显示TFSBuildServiceHost中打开的文件句柄重新启动服务似乎是一种解决办法。

在为一个存储库中的不同分支引入多个构建之前,我们从未遇到过这个问题。有一天,生成失败,出现异常:

Exception Message: Attempted to access an unloaded AppDomain. (type AppDomainUnloadedException)
Exception Stack Trace: 
Server stack trace: 
at LibGit2Sharp.Core.NativeMethods.git_clone(RepositorySafeHandle& repo, String origin_url, FilePath workdir_path, GitCloneOptions& opts)
at LibGit2Sharp.Core.Proxy.git_clone(String url, String workdir, GitCloneOptions& opts)
at LibGit2Sharp.Repository.Clone(String sourceUrl, String workdirPath, CloneOptions options)
at Microsoft.TeamFoundation.Build.Activities.Git.GitPull.GitClone.GetRepository(String repositoryUrl, String workingFolder, Boolean checkoutSubmodules)
at System.Runtime.Remoting.Messaging.StackBuilderSink._PrivateProcessMessage(IntPtr md, Object[] args, Object server, Object[]& outArgs)
at System.Runtime.Remoting.Messaging.StackBuilderSink.AsyncProcessMessage(IMessage msg, IMessageSink replySink)

在此之后,问题开始不时出现,直到我重新启动TfsBuildServiceHost。TFS 2013 U4。

我们已经看到了间歇性的报告,我们正在研究为什么这会影响一些用户。很抱歉给您带来不便。更新2无法为我们解决此问题。当有两个生成代理(在同一台计算机上)从git中提取源代码时,此问题对我来说总是可以重现的。更新:我使用TFS 2013.2 Express安装了VS2013.2。是否有人确认这个问题现在已经被VisualStudio Team Foundation Server 2013更新了3?本版本中列出的TFS修复程序之一听起来很有希望:“同一Git存储库的并发构建可能会失败。”@cacau在应用TFS 2013更新4之后,我现在看到了它(以前从未看到过)。(链接中的相关问题不同(网络错误与文件系统错误)。