致命:无法打开'.git/COMMIT_EDITMSG':权限被拒绝

use*_*606 38 github octopress

我正在尝试在github页面上部署octopress.我按照这些说明操作:

http://octopress.org/docs/deploying/github/

这一切都运行良好,直到提交部分,我得到错误:

致命:无法打开'.git/COMMIT_EDITMSG':权限被拒绝

当然,我是我的github.io页面的所有者,我之前从未遇到过这个问题.为什么会发生这种情况,更重要的是我该如何解决?

Zen*_*dix 68

我通过删除解决了它.git/COMMIT_EDITMSG.很奇怪,我知道.


rem*_*ram 38

这不是来自远程Git存储库的错误消息,这是本地文件的问题.您可能在同一目录中使用git(或rake)作为另一个用户(例如root),并且它创建了您现在无法覆盖的文件.

只需使用chown将文件的所有权更改为当前用户,例如:

chown -R $(whoami) .
Run Code Online (Sandbox Code Playgroud)

  • 这很棒!谢谢.对于mac来说,它可以像"sudo chown -R $(whoami)"那样完成. (4认同)

Lau*_*ulo 14

如果您正在处理血腥的Microsoft Windows,则错误可能是由于您正在"观察"文件资源管理器中的隐藏文件.这就是它!

  • 这是我的问题。我实际上不得不停止显示隐藏文件 - 只是关闭文件资源管理器不起作用。 (3认同)
  • 设置一个该死的 Windows 机器来测试一些代码,并在此类事情上浪费了大量精力。为什么,为什么,为什么我不得不问,他们的开发人员储备真的不能让事情开箱即用吗? (2认同)

xcu*_*pir 9

如果您使用的是 Windows 并且遇到任何 Git 权限问题,请确保您的(本地)存储库的.git文件夹内容 未标记为 hidden

但是,您可以隐藏目录本身,而不是它的内容(文件、子目录)。


err*_*aht 5

Windows用户的另一个解决方案:如果您使用YandexDisk - 同步下的.git文件夹 - YandexDisk在同步后设置隐藏和只读属性.因此,关闭YandexDisk并使.git文件夹和所有子文件夹和文件不可见而不是只读