当尝试切换/签出(在TortoiseGit中)到另一个分支时,我收到以下错误:
error: unable to unlink old 'foo/bar.cfc' (Bad file descriptor)
这是什么意思?
答案 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