致命:无法在/ root / wp-content / cache / page_enhanced / ....创建目录。没有这样的文件或目录

时间:2013-10-04 11:56:49

标签: git git-merge git-rebase git-stash

从服务器拉出一些更改后。

我再也无法推送任何内容如果我正在尝试git git pushgit pullgit mergegit rebase origin/mastergit reset --hard

总是说fatal: cannot create directory at /root/wp-content/cache/page_enhanced/.... No such a file or directory

即使我创建新的清理存储库并尝试克隆它仍然会得到相同的错误。

我如何解决这个问题...无论如何这是一些缓存目录,我不需要它...如何删除或忽略它?

5 个答案:

答案 0 :(得分:18)

我有类似的问题。我发现我必须关闭Visual Studio,因为它保留在目录中。

如果您遇到此问题,我建议您关闭所有程序。如果您的问题与我的问题相同,那么当持有该引用的程序关闭时,您将能够执行您的git命令。如果你系统地做,那么你也应该找到罪犯。

答案 1 :(得分:6)

可能有几件事取决于您运行的机器的操作系统和git的版本。有了更多细节,我可能会更具体。

在Windows上,它是目录的权限,或者是目录/路径的长度。在Linux上,它将是权限。我也看到了问题是目录或文件中不允许的字符的情况。

删除目录的最佳选择是将其克隆到可行的地方,例如运行root(或vm或运行cygwin)的linux机箱,并将其添加到.gitignore文件中:/wp-content/cache/

然后,要删除已缓存的信息,请键入: git rm -rf –-cached wp-content/cache然后提交并推送。

答案 2 :(得分:0)

我的解决方案-看起来很奇怪-是手动创建目录。

我的问题是在分支结帐操作期间出现了同样的“无法创建目录”的问题。手动创建目录后,我能够成功执行git checkout。

答案 3 :(得分:0)

我最近遇到了这个问题,
并尝试在git bash的{​​{1}}内运行各种命令。
但是没有任何效果,这就是我试图解决的问题。

  • 重启机器,简单!
    有时,后台进程是如此之多或密集,以至于您无法再阻止它们。

  • 重新启动后,将windows 10cmd启动到cli

  • 运行run as administrator
    所有更改(如果不需要的话)将在此过程中放弃。

  • 一旦进入git checkout -f <branch>分支,便可以new,因为您要删除它。

答案 4 :(得分:0)

就我而言,我做了以下工作,然后奏效了。

  1. 关闭当前正在使用/保存文件的任何应用程序。对我来说是Matlab。
  2. 我想进行“ git pull”操作,因此将相关文件更改的文件存储到其他位置,并将所有更改恢复到该文件夹​​中。
  3. 然后执行git pull并正常工作。