在我的Windows机器上,当我拿回我的回购时,我得到:
error: unable to crate file <path to file> (Permission denied)
我认为问题可能是当我查看文件夹的属性时,复选框内有一个方块,我将其清除,以便不会只读取任何文件或文件夹。
按下确定并检查Windows是否应用了我的更改后,我再次看到了方块!
如何让Git或Windows允许我获得提交?
答案 0 :(得分:32)
使用Run As Administrator
答案 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窗口并再次打开它并且有效。