我有git错误:“每次进行”git pull origin develop“时,”将对象添加到存储库数据库.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
答案 0 :(得分:215)
假设@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"
答案 1 :(得分:5)
转到项目的根目录并运行以下命令来解决此问题,
False
答案 2 :(得分:1)
不是一个好的做法(只是替代方案)
我正在使用Ubuntu并面临同样的问题。为了解决这个问题,我只是将用户切换到root,我没有看到任何进一步的错误。
$su
password
然后,
$git pull origin master
推荐方式:更改目录的许可
答案 3 :(得分:1)
我是一个愚蠢的错误......设置了正确的用户名和组,但www-data是访问它的帐户。该目录由vaindil拥有:www-data,但权限为755,因此www-data无法写入。修正了:
$ sudo chmod -R 775 /path/to/repo
答案 4 :(得分:0)
如果要从github克隆公共存储库,请从URL中删除.git。
示例:
来自:https://github.com/example/repository.git 收件人:https://github.com/example/repository