2013-04-12 192 views
6

我已经安装了最新的GitLab和Bitnami。但我无法将我的更新推送到中央回购。它总是要求Git密码。我将它安装在本地服务器上,并将域名作为本地IP。公钥在/hom/git/.ssh/authorised_keys列表中更新。但它要求提供Git用户密码。请帮帮我。GitLab:我无法推​​送或克隆回购,要求Git密码

+0

你能ping客户端的域名吗?你有什么客户? (Windows,Unix?)你有什么版本的'git'在客户端上?你在服务器的'〜git/.ssh/authorized_keys'文件中看到'gitlab-shell'吗? – VonC

+1

我一直在为此奋斗数月。看看这个github问题。 https://github.com/gitlabhq/gitlabhq/issues/search?q=1875 – spuder

+0

后来我尝试gitlab 4.2没有bitnami,它工作正常。 gitlab 5有这个问题。 – merp

回答

1

这很奇怪。你可以检查你的SSH服务器是否配置为使用authorized_keys文件?

的/ etc/SSH/sshd_config中

Pubkey验证是

你能检查你的.ssh文件的权限/ authorized_keys文件?所有者应该是git用户。你以前是否安装过Gitlab版本?也许Gitolite已安装并需要使用gitlab壳为GitLab 5.

1

我认为你的git的命令是这样的

git clone [email protected]:project.git 

也许

sudo git clone [email protected]:project.git 

有时我们会与我们正在使用的用户帐户混淆在一起。如果我们运行sudo,那意味着命令以root身份运行。你是否为root创建SSH密钥并将其放入Gitlab?在其他情况下,您可能使用sudo ssh-keygen创建了SSH密钥,但您正常运行git,这意味着git命令作为活动用户运行。

我们也可能会混淆在Gitlab中放置的SSH密钥。

不知道你是否还需要这个,但是如果你使用web钩子,在Ubuntu中Apache通常以www-data的形式运行。因此,要使Web钩正常工作,您需要为www数据用户创建SSH密钥。

0

我刚刚在虚拟机(xenserver)和Ubuntu服务器12.x LTS上设置了gitlab。我有同样的确切问题。

我设置了我的ssh密钥和所有这些,仍然没有。

我做了两件事情,不知道,如果一个或两个固定它...

首先,我安装的git(!)。我只是假定它会随着gitlab而来,但事实并非如此。

sudo apt-get install git 

当您安装gitlab时,它会创建一个用户'git',但它不会显示在主目录中。

我设置的git用户的密码:

sudo passwd git 

我重启机器之后。当时我能够推/拉像这样:

git clone [email protected]:test-group/test-repo.git 

我想使用git/gitlab部署在偏远地区的很多,很多机器自动和远程更新。我仍然无法弄清楚如何去做。我以为你可以在gitlab中创建一个用户,并根据用户的权限推/拉,但我似乎无法弄清楚如何去做。

祝你好运!

相关问题