突然之间,我在查看本地 master 分支时开始收到以下错误。有问题的文件以及错误本身似乎是随机的(有时结帐工作得很好)。
"c:\Program Files (x86)\Git\bin\git.exe" checkout --merge "master" D abc123.cs error: unable to create file abc123.cs (Permission denied) Switched to branch 'master' Done
突然之间,我在查看本地 master 分支时开始收到以下错误。有问题的文件以及错误本身似乎是随机的(有时结帐工作得很好)。
"c:\Program Files (x86)\Git\bin\git.exe" checkout --merge "master" D abc123.cs error: unable to create file abc123.cs (Permission denied) Switched to branch 'master' Done
只是关闭编辑器解决了我的问题。顺便说一句,我使用的是 Atom 编辑器。
我不知道你是否使用了 sublime text,但是当我遇到权限被拒绝的问题时,我注意到有一个许可证通知弹出;试图让你每隔一段时间就向 sublimetext3 捐款。
一旦我关闭该弹出窗口并再次运行命令,被拒绝的权限错误就消失了,一切正常。
我推断其他带有弹出通知的编辑器可能会导致此问题。
正如 bugged87 所提到的,重新启动肯定会消除任何弹出窗口或通知。
就我而言,我的 Angular 应用程序仍在运行ng serve
,给出了这个:
所以我只需要用ctrl+c
.
前一段时间我也发生了同样的事情,我已经关闭了我的 VScode,输入git checkout
并且它起作用了!
Daniel Hilgarth在评论中的反病毒建议提醒我,在问题出现前不久我已经运行(并提前取消)文件恢复扫描。
如果这些扫描过程没有正确取消,它们可能会导致问题。
无论如何,重新启动我的机器解决了这个问题。
关闭我的文本编辑器(Atom)修复它。
关闭 VSCode 并运行git checkout master -f
对我有用。
对我来说,解决方案是打开 Windows 任务管理器并终止任何正在运行的 IIS 实例。
关闭我所有的公开会议并开始一个新的会议对我有用。
这是操作系统级别的错误,与 Git 无关!
有时通过关闭 IDE 和所有资源管理器解决问题,有时通过重新启动解决问题。
但最好的解决方案是创建另一个文件夹并在其中克隆项目。您也可以在克隆后删除旧项目。您不会在新文件夹中看到任何权限被拒绝的问题。
Cmder 控制台上的同样问题;我刚刚关闭它,它成功了。
只需关闭 Visual Studio Code 编辑器即可解决我的问题。
我刚刚在Win7上遇到了同样的问题。
对我来说,解决方案是在执行以下操作时禁用Microsoft Security Essentials中的实时保护git checkout master
请记住再次打开它。
可能不需要重新启动。您可以尝试关闭编辑器或 IDE 并退出当前设置到该项目文件夹中的所有 CMD 或 Windows shell。
请注意,Windows 资源管理器中的预览窗格也可能导致权限错误。我只花了一个小时试图找出导致问题的原因,认为这是某种文件损坏,突然间很明显,只要关闭预览窗格(或者没有选择有问题的文件)文件资源管理器)然后一切都很好。
您可以尝试关闭 VS Code Editor 和 Git Bash;然后再次打开 Git Bash 并运行以下命令。
git checkout branch-name