在编写我正在提取的文件时,Git给了我一个“Permission Denied”错误

时间:2012-02-08 20:03:21

标签: git windows-7 permissions

在我的Windows机器上,当我拿回我的回购时,我得到:

error: unable to crate file <path to file> (Permission denied)

我认为问题可能是当我查看文件夹的属性时,复选框内有一个方块,我将其清除,以便不会只读取任何文件或文件夹。

按下确定并检查Windows是否应用了我的更改后,我再次看到了方块!

如何让Git或Windows允许我获得提交?

7 个答案:

答案 0 :(得分:32)

使用Run As Administrator

运行Git Bash或您正在运行的控制台

答案 1 :(得分:24)

检查另一个应用程序是否正在使用您的文件并将其终止。就我而言,它是 grunt ,一直在关注变化和建设项目。丢弃文件时,给我与你的相同的信息。

怎么回事?当我切换到另一个分支时,我的工作副本中出现了一些不存在的文件。我不能丢弃它们,也不能在文本编辑器中打开它。

答案 2 :(得分:16)

在我遇到同样问题的情况下,另一个阻止文件的程序(Atom)。关闭它有帮助。

因此,检查是否有其他程序,代码编辑器使用相同的文件,如果是,请将其关闭。

答案 3 :(得分:1)

我在输掉一个rebase后就遇到了这种错误。事实证明,有一个孤立的git进程正在锁定.git目录中的文件。

否则a script from this answer也可能有用。

答案 4 :(得分:1)

为我添加以上这些答案都没有效果:如果安装了它,请检查Bitdefender设置(或其他安全软件)。它与受保护的文件夹一起运行,可能会阻止任何操作文件的尝试。当使用例如git bash时,rm,vim等命令都算作单独的命令,需要单独的权限 - 不仅仅是bash.exe本身。

答案 5 :(得分:0)

关闭Windows UAC似乎可以解决问题。

答案 6 :(得分:0)

Windows 10上的Git Bash。该文件不是只读的,所以我关闭了bash窗口并再次打开它并且有效。