我的本地git存储库中的一个文件发生了问题。当我试图改变分支时,它会说:
Unlink of file 'templates/media/container.html' failed. Should I try again? (y/n)
这意味着什么?
我的本地git存储库中的一个文件发生了问题。当我试图改变分支时,它会说:
Unlink of file 'templates/media/container.html' failed. Should I try again? (y/n)
这意味着什么?
当前回答
在上面的答案似乎都不起作用之后,运行gitfetch-p为我完成了任务。
https://git-scm.com/docs/git-fetch
其他回答
我遇到了同样的错误,关闭打开文件的应用程序解决了问题。我可以返回并按“Y”
如上所述,其他东西保存着这些文件。问题是,这个程序对我们来说并不可疑。我正在尝试从控制台中进行git拉取,同时打开了GitKraken。关闭GitKraken解决了问题。
在我的例子中(Win8.1,TortoiseGit正在运行),锁定文件的是名为“TortoiseSVN状态缓存”的进程。
杀死它让我可以运行“git-gc”而不再出现任何问题。上述过程由TortoiseGit启动,因此无需手动重新启动。
在我的例子中,没有进程触及文件或目录。如果路径很长,可能会发生这种情况,因为操作系统限制(windows)。尝试在全局git配置中启用longpath支持标志,如下所示:
git config --global core.longpaths true
或者尝试设置是/否回答标志,如果这对你来说不冲突
set GIT_ASK_YESNO=false
如果路径太长,我还没有找到成功的解决方案。
正如上面的答案中所提到的,yes文件可能必须被其他java进程使用,摆脱这个问题的简单方法是,杀死所有java进程,然后执行git pull。
对于windows,关闭所有java进程:
taskkill /F /IM java.exe
对于Linux,杀死所有java进程:
kill -9 `pidof java`