我已经通过Bitnami安装了最新的GitLab,但是无法将更新推送到中央仓库。它总是要求Git密码。我在本地服务器上安装并将域名作为本地IP。公共密钥已更新到 /hom/git/.ssh/authorised_keys列表中。但它仍然要求Git用户密码。请帮助我。
git clone git@domain:project.git
sudo git clone git@domain:project.git
sudo
,那么该命令将作为root运行。您是否为root创建了SSH密钥并将其放入Gitlab中?否则,您可能使用sudo ssh-keygen
创建了SSH密钥,但是以普通用户身份运行git,这意味着git命令正在以活动用户身份运行。这很奇怪。您能检查一下您的SSH服务器是否配置为使用authorized_keys文件吗?
/etc/ssh/sshd_config
PubkeyAuthentication yes
您能检查一下.ssh/authorized_keys文件的文件权限吗?所有者应该是git用户。您之前已经安装过Gitlab版本了吗?也许Gitolite已经安装好了,您需要使用gitlab-shell来适配GitLab 5。
我昨天在虚拟机(xenserver)和Ubuntu服务器12.x LTS上安装了GitLab。我遇到了完全相同的问题。
我设置了我的SSH密钥等,但仍然没有用。
我做了两件事情,不确定哪一个或两个都解决了它...
首先,我安装了Git!我只是以为它会随着GitLab一起安装,但实际上并没有。
sudo apt-get install git
sudo passwd git
之后我重新启动了机器。然后我就能像这样推送/拉取了:
git clone git@192.168.1.182:test-group/test-repo.git
我想使用git/gitlab来为许多远程位置的机器部署自动和远程更新。但我仍然无法弄清楚如何做到这一点。我认为你可以在gitlab中创建一个用户,并基于该用户的权限进行推送/拉取,但我似乎无法弄清楚如何做到这一点。
祝你好运!
git
版本是多少?在服务器上的~git/.ssh/authorized_keys
文件中是否看到了gitlab-shell
? - VonC