从git中拉出时出错 – 没有足够的权限将对象添加到存储库数据库.git / objects中

我有git错误:“每次我做”git pull origin develop“的时候,”添加一个对象到repository数据库.git / objects“的权限不够。

remote: Counting objects: 70, done. remote: Compressing objects: 100% (7/7), done. remote: Total 42 (delta 35), reused 42 (delta 35) error: insufficient permission for adding an object to repository database .git/objects fatal: failed to write object fatal: unpack-objects failed 

假设@ChrisHayes对于一个意外的sudo是正确的,这应该修复它。 从你的仓库中:

 sudo chown -R $USER:$USER "$(git rev-parse --show-toplevel)/.git" 

更新 :对于那些得到illegal group name错误,请尝试这个:

 sudo chown -R $(id -u):$(id -g) "$(git rev-parse --show-toplevel)/.git" 

矿是一个愚蠢的错误…正确的用户名和组被设置,但WWW数据是访问它的帐户。 该目录归vaindil所有:www-data,但是权限是755,因此www-data无法写入。 修正了它:

 $ sudo chmod -R 775 /path/to/repo 

不好的做法(只是一个select)

我正在使用Ubuntu,并面临同样的问题。 为了解决这个问题,我只是简单地将用户切换到root用户,我没有再看到错误。

 $su password 

然后,

 $git pull origin master