我是gitlab和CI的新手,所以我有很多问题,但有些问题是通过google,SO,git mans解决的,但不是最后一个......
我无法通过ssh =(
)克隆回购如果我尝试通过http:
克隆回购lesha@lesha-SeoTeam:/var/www$ git clone http://gitlab.vbox/root/virtualboxgitlab.git
Cloning into 'virtualboxgitlab'...
Username for 'http://gitlab.vbox': root
Password for 'http://root@gitlab.vbox':
warning: You appear to have cloned an empty repository.
那没关系!
但是通过ssh ......
lesha@lesha-SeoTeam:/var/www$ git clone git@gitlab.vbox:root/virtualboxgitlab.git
Cloning into virtualbox 'gitlab'
git@gitlab.vbox's password:<br />
它提示我git的密码,我在安装过程中没有创建(就像我在man中一样)
rsa keys
我通过gitlab的网站添加了我的密钥(到帐户root,实际上我没有创建任何其他帐户)
我还在&#34; cat my_rsa.pub&gt;&gt;上添加了密钥。的authorized_keys&#34;
我在这里看了几篇关于ssh麻烦的帖子,但大多数都安装了gitolite
我安装了没有gitolite的gitlab 5.3(如在手册中),可能是我应该的吗?
我也尝试ssh -vT git@gitlab.vbox
并输出:
....
debug1: Server host key: ECDSA 48:83:ba:b3:37:72:a0:dc:ca:2c:a3:b8:78:a1:c4:ad
debug1: Host 'gitlab.vbox' is known and matches the ECDSA host key.
debug1: Found key in /home/lesha/.ssh/known_hosts:2
debug1: ssh_ecdsa_verify: signature correct
debug1: SSH2_MSG_NEWKEYS sent
debug1: expecting SSH2_MSG_NEWKEYS
debug1: SSH2_MSG_NEWKEYS received
debug1: Roaming not allowed by server
debug1: SSH2_MSG_SERVICE_REQUEST sent
debug1: SSH2_MSG_SERVICE_ACCEPT received
debug1: Authentications that can continue: publickey,password
debug1: Next authentication method: publickey
debug1: Offering RSA public key: /home/lesha/.ssh/id_rsa
debug1: Authentications that can continue: publickey,password
debug1: Trying private key: /home/lesha/.ssh/id_dsa
debug1: Trying private key: /home/lesha/.ssh/id_ecdsa
debug1: Next authentication method: password
git@gitlab.vbox's password:
root@seotm-server:/home/git/.ssh# ls -l
итого 4
-rw------- 1 git git 922 Июл 18 21:05 authorized_keys
environmetnt: debian 7,nginx + passenger,gitlab 5.3,ruby 2.0.0p247,没有gitolite,puma对抗独角兽
请帮忙!=)我被困......
一些补充(20.07.2013):
我在手动安装中创建了用户git
sudo adduser --disabled-login --gecos 'GitLab' git
第二天,我试图杀死git并简单地通过useradd
命令重新添加,之后我的密钥正在运行,但我仍然不满意,因为:
lesha@lesha-SeoTeam:/var/www$ git clone git@gitlab.vbox:root/virtualboxgitlab.git
Cloning into 'virtualboxgitlab'...
fatal: 'root/virtualboxgitlab.git' does not appear to be a git repository
fatal: The remote end hung up unexpectedly
和http与以前一样有效:
lesha@lesha-SeoTeam:/var/www$ git clone http://gitlab.vbox/root/virtualboxgitlab.git
Cloning into 'virtualboxgitlab'...
Username for 'http://gitlab.vbox': root
Password for 'http://root@gitlab.vbox':
warning: You appear to have cloned an empty repository.
所以,现在我没有auth问题,但又有另一个。
您如何从那里解决此问题?
答案 0 :(得分:6)
GitLab 5.x doesn't use gitolite anymore,但gitlab-shell
。
我建议按照installation process的建议创建一个专用帐户。
ssh git@gitlab.vbox
ssh命令意味着您要求用户“gitlab.vbox
”在“git
”上设置安全shell。如果该用户不存在......它将无效。
没有必要尝试克隆repo是测试无法正常运行:
sudo -u git -H bundle exec rake gitlab:check RAILS_ENV=production
创建git用户并添加密钥后,OP报告ssh的效果会更好,但是:
~git/.ssh/id_rsa
:您正尝试从客户帐户打开git
会话。 git
是安装gitlab的帐户。useradd
”ssh to root。如果你看到这个:
lesha@lesha-SeoTeam:/var/www$ git clone git@gitlab.vbox:root/virtualboxgitlab.git
Cloning into 'virtualboxgitlab'...
fatal: 'root/virtualboxgitlab.git' does not appear to be a git repository
fatal: The remote end hung up unexpectedly
这也意味着你不应该指定仓库的路径(root/
):
git clone git@gitlab.vbox:virtualboxgitlab.git
知道virtualboxgitlab.git的存储位置是gitlab的工作(在gitlab.yml
配置文件中指定)
基本上,忘记root ,并按照预期完成gitlab的完整安装:在“git
”帐户中。
OP使其发挥作用,评论说:
OP必须:“
root
”是管理员命名空间,gitlab会自动创建这个url而没有它克隆不起作用,现在所有克隆和我开始安装gitlab CI,
将我的用户添加到sudo组,进行全新安装,收到错误
/usr/local/lib/ruby/2.0.0/net/http.rb:878:in initialize': getaddrinfo:
Name or service not known (SocketError)
无法解析主机名,已将gitlab.vbox
添加到/etc/hosts