Git 权限错误

Git 权限错误

我刚刚在两三个月内第一次启动我的 Windows 10 机器,并更新了一个游戏,该游戏的版本保存在 git repo 中。游戏有一个补丁,所以我尝试暂存更改,但出现了以下错误:

错误:权限不足,无法将对象添加到存储库数据库 .git/objects

自从几个月前它工作以来,我还没有改变任何东西。ls -l在 git bash 中,我显示我是游戏目录中所有文件的所有者。我可以移动和重命名那里的文件。我也是 下所有目录的所有者.git/objects。git 缺少什么权限?

更多信息

repo 路径的结构是C:\Program Files (x86)\Foo\Bar\.git。我之前chown -R Kevin .chown -R Kevin .git里面运行过Bar

我可以将Bar文件夹复制到我的桌面。但在文件Bar夹内FooFoo文件夹内进行复制C:\Program Files (x86)需要管理员权限。

这似乎没有解释 git 需要什么权限。它应该只写入目录.git,对吧?错误是由于尝试在 中写入文件.git。我可以touch在那里毫无问题地写入文件。

答案1

写入需要 Windows 的管理员权限。对于 Windows 来说, git bash 中显示您是文件夹所有者C:\Program Files (x86)并不重要,而且这不会让您从 Windows 获得该文件夹的任何额外权限。ls -lt

我建议将存储库移到外面C:\Program Files (x86),以避免权限问题。

您可以使用 git init该文件夹内的 在任何文件夹中创建存储库。只需使用命令,您就可以将任何目录变成 git 存储库git init

这将避免存储库文件夹的权限问题。

更多信息请参阅文章 创建本地存储库

答案2

子目录中可能存在一些具有不同权限的文件。

您需要更改目录所有权,如这个 Stackoverflow 答案。

相关内容