当我尝试推到共享git远程时,我得到以下错误: 向存储库数据库添加对象权限不足

这适用于下一次推送,因为所有的文件都属于正确的组,但下一次有人推送一个更改时,它会在对象文件夹中创建一个新项目,该项目的默认组为组。我唯一能想到的就是改变所有开发人员签入项目的默认组,但这似乎是一种hack。什么好主意吗?谢谢。


当前回答

最简单的解决方案是:

来自项目总监:

sudo chmod 777 -R .git/objects

其他回答

适用于Ubuntu(或任何Linux)

从项目根,

cd .git/objects
ls -al
sudo chown -R yourname:yourgroup *

你可以通过以下方式说出你的名字和你所在的小组:

# for yourname
whoami
# for yourgroup
id -g -n <yourname>

注意:记住sudo行末尾的星号

对我有用

sudo chmod -R g+rwX .

我只是想加入我的解。我在OS X上有一个回购,在一些目录上有根所有权,在其他目录上有Home(这是我的用户目录),这导致了上面列出的相同错误。

谢天谢地,解决办法很简单。从终端:

sudo chown -R Home projectdirectory

Linux、macOS:

cd .git/
sudo chown -R name:group *

其中name是用户名,group是用户名所属的组。

您需要在您的终端上复制并粘贴此命令:-

sudo chmod 777 -R .git/objects