Git错误 - 无法取消链接旧的'some / file / name'(错误的文件描述符)

时间:2010-12-15 16:56:47

标签: git tortoisegit

当尝试切换/签出(在TortoiseGit中)到另一个分支时,我收到以下错误:

error: unable to unlink old 'foo/bar.cfc' (Bad file descriptor)

这是什么意思?

6 个答案:

答案 0 :(得分:41)

您在使用TortoiseGit时是否使用任何其他工具?

例如,这个project mentions与Visual Studio的交互:

  

如果您在Windows上运行git命令时看到无法取消链接旧文件的错误,很可能是您在Visual Studio中打开了chrome解决方案并且它正在更新IntelliSense,它会随机暂时锁定文件。
  解决方法是完全禁用IntelliSense,或者确保在执行任何可能触及大量文件的git操作时临时关闭解决方案。

换句话说,如果您关闭尽可能多的当前正在运行的应用程序,问题是否仍然存在? TortoiseGit会让你签出另一个分支吗?

答案 1 :(得分:28)

我遇到了这个问题 - Eclipse正在锁定文件,即使它没有在编辑器中打开。一旦我关闭了日食,我就可以结账了。

答案 2 :(得分:20)

该文件被其他程序锁定,无法覆盖。 See what application has the file locked,关闭该应用程序,然后重试。

答案 3 :(得分:4)

如果您的问题基于日食锁定文件,您可以使用-Dosgi.locking=none开始日食。 我用eclipse Luna 4.4.0遇到了这个问题

答案 4 :(得分:1)

当我尝试拉时,github桌面应用程序出现了相同的错误。我通过关闭Visual Studio并在管理员模式下运行github桌面应用程序解决了该问题。

答案 5 :(得分:0)

使用以下命令制作一个bat文件并运行它。它将重新启动
资源管理器,这通常是导致您的IDE失败的原因

taskkill /f /IM explorer.exe
start explorer.exe
exit