git pull导致“unlink of file failed”错误

时间:2016-01-25 17:41:31

标签: git

我正在尝试git pull并遇到可怕的“文件xxx失败的链接”错误。

我已经尝试了this回答中定义的ProcessExplorer;使用find函数不会使用相关文件返回任何进程。

我也尝试按this回答中提到的那样运行git gc,它会运行,但我仍然会收到错误。

我对相关文件有写权限。

还有其他建议吗?这引起了一个重大问题。

2 个答案:

答案 0 :(得分:2)

这应该在Git 2。8(2016年3月)中修复

commit d562102commit dcacb1bcommit df617b5commit 0898c96Johannes Schindelin (dscho)(2016年1月13日)。{
Junio C Hamano -- gitster --于2016年1月26日commit 3c80940合并)

  

fetch:在垃圾收集之前发布包文件

     

在auto-gc'ing之前,我们需要确保在需要重新打包和垃圾收集的情况下发布包文件。

     

许多在退出之前运行“gc --auto”的代码路径会保留打包的文件并将文件描述符保留为打开状态,这对于无法删除打开的文件的系统不友好。
  他们现在关闭包装。

修正了git-for-widows issue 500

查看test used to validate that new approach,也许你可以(因为Git 2.8尚未出局)人为地提出gc.autoPackLimit

git config gc.autoPackLimit 10000
git fetch
git config gc.autoPackLimit 50 # default value

答案 1 :(得分:0)

您使用的是cmd吗? 如果是,请在切换到git-bash(运行GIT目录bin文件夹中的bash.exe文件)后尝试git pull,这应该没有任何问题(与Windows相关的错误),git-bash是UNIX。