我在我的本地ubuntu 14.04桌面上安装了gitlab omnibus,大约一个月前,并已大量将其用于项目管理和版本控制。我最近尝试将服务器设置为面向公共的服务器,因此更改了主机名和更新/etc/hosts以启用此功能。一旦做出了更改,我就无法推到Gitlab存储库,不幸的是,这已经停止了几个项目的所有进展。找到此问题后,我将服务器主机名和/etc/hosts文件恢复到其原始状态,作为解决问题的许多步骤中的几个步骤。尚无措施,因为我正在提示GIT@[MyServer]的用户登录,而不是使用已安装的SSH键。
我已经通过gitlab web界面添加了SSH公共密钥,并确认它是通过检查/var/opt/gitlab/.ssh/authorized_keys文件来安装的,并确认列出了公共密钥,并包括额外的键gitlab需要的'命令= ...'部分。ssh的东西对我来说,一切都很好,尽我最大的理解。我确实在服务器上的其他用户帐户上有工作的SSH键,并确认这些键正在按预期工作。这些问题似乎是特定于gitlab而不是我的一般SSH服务。
我发现了有关此问题的其他讨论,但是那些对我有帮助的解决方案。具体来说,我试图遵循以下线程中提供的指示:
- git推动在gitlab中失败
- https://github.com/gitlabhq/gitlab-public-wiki/wiki/wiki/trouble-shooting-guide(特别是"无法从远程存储库中读取"部分 )
我花了大约3天的时间试图解决此问题,但没有取得任何进展。我什至卸载并重新安装了gitlab,只是发现卸载没有清除任何设置或数据,并且问题已渗透。
我该怎么做才能再次获得此可用?我很高兴提供有关服务器和GitLab配置的任何详细信息。
在这里迟到一点,但我遇到了类似的问题。
我的解决方案是使用ssh-agent并添加我的钥匙(此处为):
-
创建密钥: SSH -KEYGEN -T RSA -B 4096 -C" your_email@example.com"
-
输入保存密钥(〜/.ssh/id_rsa)的文件:[按Enter]
-
启动SSH-Agent: eval $(ssh-agent -s)
-
添加您的ssh键: ssh-add〜/.ssh/id_rsa
- 确保已将.pub文件内容添加到GitLab SSH键(gitlab-个人资料设置-SSH键)
- 然后更改您的git遥控器以使用SSH git远程设置-url origin ssh://github.com:port/username/repo.git
完成
您是否更新了gitlab_url设置以匹配gitlab-shell/config.yml中的主机名并检查了端口号?
我最近也遇到了这个问题,并能够通过更新我的/etc/gitlab中更新external_url变量(最初分配给尚未注册的域名)来解决它/Gitlab.rb文件。
创建新项目页面上链接中建议的SSH键。
原始外部_url变量:external_url'http://gitlab.example.com'
更新了外部_url变量:external_url'http://10.10.10.10'