Git推送错误,权限不足,未能写入对象
问题描述:
我在我自己的服务器(Ubuntu 14.04)上有一个Git repo,一切工作正常,但现在如果我尝试从服务器推送一些提交到repo我得到这个错误的服务器:Git推送错误,权限不足,未能写入对象
Counting objects: 51, done.
Compressing objects: 100% (22/22), done.
Writing objects: 100% (26/26), 2.78 KiB | 0 bytes/s, done.
Total 26 (delta 23), reused 7 (delta 4)
remote: error: insufficient permission for adding an object to repository database ./objects
remote: fatal: failed to write object
error: unpack failed: unpack-objects abnormal exit
To ssh://[email protected]/home/git/projects/myproject/
! [remote rejected] master -> master (unpacker error)
error: failed to push some refs to 'ssh://[email protected]/home/git/projects/myproject/'
我知道,我不应该从服务器推,但我需要(我不高兴)。
我的Git的配置文件是这样的:
[core]
repositoryformatversion = 0
filemode = true
bare = false
logallrefupdates = true
[branch "master"]
[remote "origin"]
url = ssh://[email protected]/home/git/projects/myproject/
fetch = +refs/heads/*:refs/remotes/origin/*
[branch "master"]
remote = origin
merge = refs/heads/master
[receive]
denyNonFastForwards = True
如果我克隆回购在服务器上的新位置,这个问题一直来了。如果我从Windows PC推送到服务器,一切都很好。
有没有人有任何想法呢?
我试过Git Push Error: insufficient permission for adding an object to repository database已经对问题没有任何影响。
权限设置正确。我几小时前推出了数据到回购站(从服务器到服务器,从PC到服务器),没有任何问题。
答
我改变了我的git远程URL,所以没有SSH通过
git remote set-url origin /home/git/projects/myproject/
+0
我只是把东西推到同一台机器上。我想,我不需要ssh来处理这种情况 – fehmelchen
的可能重复[混帐推错误:没有足够的权限,用于添加对象存储库数据库(http://*.com/questions/6448242/git-push-error-sufficient-permission-for-adding-an-object-to-repository-datab) –
谢谢你的想法,但我已经试过了...... – fehmelchen
所以你从一个目录在另一台服务器上?如果是这样的话,为什么还要用ssh来进出?只需定义一个相对参考作为您的远程。这至少可以降低帮助诊断问题的复杂性。 –