[英]Gitlab/Gitolite issue while cloning repo
我已经严格按照gitlab wiki中的手册设置了一个Gitlab。 有用。 我有一个Web访问,我也可以创建一个项目(并在它之后创建了git repo)。 一切都好。
但是当我尝试克隆新创建的项目仓库时
git clone git@git.myserver.com:myproject.git
从我的开发机器上,服务器说我需要为git用户输入密码(这个用户没有密码)。 我认为它应该用我提供的密钥授权我。
我的环境:我已经在我的开发机上成功创建了ssh密钥,将HOME环境变量设置为C:\\ Users \\。 Ssh正确地授权用户使用其他服务器(以及此服务器)的密钥。 我还为我的git用户添加了生成的密钥。
下一个命令也可以从本地服务器用户正常工作(这也是根据手册):
sudo -u gitlab -H git clone git@localhost:gitolite-admin.git /tmp/gitolite-admin
我的git用户的authorized_keys文件如下:
# gitolite start
command="/home/git/bin/gl-auth-command gitlab",no-port-forwarding,no-X11-forwarding,no-agent-forwarding,no-pty ssh-rsa <LONG_KEY_HERE> gitlab@odiszapc
# gitolite end
在我从gitlab web console添加ssh密钥后,是否应该在authorized_keys文件中有我的用户密钥? 伙计们,我做错了什么?
这意味着:
~/.ssh
目录中) ~/.ssh/authorized_keys
注册(这似乎就是这种情况:addig你的ssh密钥应该通过gitlab触发它的发布)。 在保留之前从密钥中删除换行符 。
您将了解更多信息:
ssh -vvv git@git.myserver.com
请注意,服务器上的所有操作都是以用户'git'完成的,这就是为什么它会回来询问git
密码。 这就是gitolite如何与ssh一起使用 。
正如OP提到的那样,问题在于没有正确安装gitolite。
这是GitLab的“验证步骤”应该检测到的那种问题:
sudo -u gitlab bundle exec rake gitlab:app:status RAILS_ENV=production
它应该产生,关于gitolite(我已经添加' vvv
'和' ^^^
'强调):
# OUTPUT EXAMPLE
Starting diagnostic
config/database.yml............exists
config/gitlab.yml............exists
/home/git/repositories/............exists
/home/git/repositories/ is writable?............YES
vvvvvvvvvvvvvvvvvvv
remote: Counting objects: 603, done.
remote: Compressing objects: 100% (466/466), done.
remote: Total 603 (delta 174), reused 0 (delta 0)
Receiving objects: 100% (603/603), 53.29 KiB, done.
Resolving deltas: 100% (174/174), done.
Can clone gitolite-admin?............YES
^^^^^^^^^^^^^^^^^^
UMASK for .gitolite.rc is 0007? ............YES
如果没有,则按顺序重新安装Gitolite。
好的,我想我已经知道了。
当我从Web界面为用户添加密钥时,它尚未添加到authorized_keys文件中。 我所做的是完全删除gitolite安装,然后根据gitolite wiki的本机手册重新安装它。 现在,当我向用户添加密钥时,此密钥将添加到authorized_keys ,现在一切正常。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.