43

gitlab在主机服务器上的虚拟机上。我使用非标准 SSH 端口(即766iptable 规则然后从 转发host:766到)到达虚拟机vm:22

所以当我创建一个新的仓库时,添加远程的指令提供了一个格式错误的 URL(因为它不使用766端口。例如,网络界面给了我这个:

畸形

git remote add origin git@git.domain.com:group/project.git

而不是包含:766/在组之前的 URL。

结构良好

git remote add origin git@git.domain.com:766/group/project.git

所以是时候创建一个 repo,我必须手动进行修改,对于我的合作者也是如此。我该如何解决?

4

3 回答 3

92

在 Omnibus 打包版本中,您可以在/etc/gitlab/gitlab.rb文件中修改该属性:

gitlab_rails['gitlab_shell_ssh_port'] = 766

然后,您需要重新配置 GitLab:

# gitlab-ctl reconfigure

然后,您的 URI 将像ssh://git@git.domain.com:766/group/project.git在 Web 界面中一样正确显示。

于 2014-11-14T17:13:50.427 回答
38

如果您在 config/gitlab.yml 中正确配置 ssh_port,网页将显示正确的 repo url。

## GitLab Shell settings
gitlab_shell:
  ...
  # If you use non-standard ssh port you need to specify it
  ssh_port: 766

附言。正确的网址是:ssh://git@git.domain.com:766/group/project.git

编辑:更改后您需要清除缓存等:

bundle exec rake cache:clear assets:clean assets:precompile RAILS_ENV=production
于 2013-08-29T17:32:43.327 回答
5

注意:这是在旧的 Giltab 版本 ( v5- v6)上测试的,可能不适合现代实例。

您可以在两步过程中实现类似的行为:

1. 编辑:config/gitlab.yml

在服务器上,将端口设置为您使用的端口:

ssh_port: 766

2. 编辑~/.ssh/config

在您的机器上,添加与您的 gitlab 对应的以下部分:

Host sub.domain.com
        Port 766

限制

您需要在每个用户的计算机上重复此操作……</p>

参考

于 2013-08-29T17:48:06.483 回答