Git Extensions:在推送时使用错误的用户

时间:2015-02-11 07:16:52

标签: git git-extensions

我遇到了一个非常奇怪的问题,试图将现有的本地存储库放到我的服务器上进行共享。我按照本教程: http://git-scm.com/book/en/v2/Git-on-the-Server-Setting-Up-the-Server 在本地,我在Putty上使用Git Extensions(在Windows上),将远程指定为git@my_server.com

然而,当我尝试推送我的本地存储库时,我得到:

error: insufficient permission for adding an object to repository database ./objects

我以用户" git"登录服务器,检查了存储库是否存在问题。 所有文件权限都是正确的(属于git),我可以创建新文件。 试着找出问题所在,我查看了系统验证日志:

Feb 11 07:35:45 MY_SERVER sshd[22334]: pam_unix(sshd:session): session opened for user my_user by (uid=0)
Feb 11 07:35:47 MY_SERVER sshd[22334]: pam_unix(sshd:session): session closed for user my_user

因此,看起来Git Extensions正在尝试使用其他用户(my_user)登录系统,然后在权限方面遇到一些问题。当我为git生成新的私钥并使用此密钥进行身份验证时,这甚至是持久的,因此它甚至不能记录为my_user

现在我经常使用my_user和Putty,但不知道它最终会被Git Extensions使用。 此外,gitmy_user位于同一个组中,并且存储库在组成员(git config core.sharedRepository)之间共享,因此这甚至不应成为问题。 我也不明白git如何以my_user的身份登录。我在开头使用了my_users私钥,但随后将其替换掉了。所以Git Extensions必须将旧设置存储在某处。 我试图取消设置凭证助手(Win Store"但这并没有改变任何东西。

如果你知道出了什么问题,请告诉我。

1 个答案:

答案 0 :(得分:-1)

我可以解决这个问题!这也发生在我身上:

remote: error: insufficient permission for adding an object to repository database ./objects
remote: fatal: failed to write object

我已经读到这是因为操作系统的权限系统受到限制。

如果我没记错的话,必须使用' chmod'

更改文件权限

这个链接(Git Push Error: insufficient permission for adding an object to repository database)为我节省了很多时间!它涵盖了更多/其他细节。

古德勒克。

-Joey