是否可以在某些本地服务器上安装所有存储库,并使用Gitlab(托管在其他本地服务器上)进行浏览?
我使用Gitlab v8.3.3。我有以下情况:
- 我将所有存储库存储在本地服务器上,例如:192.168.5.5
/git
- 我还有一个托管Gitlab的本地虚拟机,位于:192.168.5.6
- 我将本地git服务器挂载到git-data目录(保存存储库的位置),运行:
sshfs my.user@192.168.5.5:/git /var/opt/gitlab/git-data/repositories/server-group
server-group是Gitlab创建一个名称相同的新组时创建的空目录。
现在我希望能够通过Gitlab浏览以这种方式安装的存储库 这可能吗?
我相信它应该是,但它需要一些额外的配置?
当然很简单:gitlab-ctl reconfigure
或gitlab-ctl restart
没有帮助,Gitlab小组server-group
有0个项目,即使在我的目录中我有有效的" repos。 GIT中"
答案 0 :(得分:1)
您需要在GitLab出现之前创建项目。
但是有一些考虑因素,GitLab期望回购是裸露的回购,并且预计还会设置一个HEAD文件。
我的建议是通过从git服务器导入每个repo来创建项目。这将创建包含所有提交和分支的裸存储库,并在GitLab数据库中创建项目。然后,如果你仍然希望在一个单独的服务器上使用repos,你可以将GitLab创建的文件夹移动到另一个服务器,然后按照你的尝试安装它们。
或者,如果您仍想尝试让当前的回购显示,并希望它们有效。 (如果他们不是裸露的回购,他们不确定是否会这样做)你可以尝试:
答案 1 :(得分:1)
我通过以下方式解决了这个问题:
1。使用GitLab API创建具有相同名称的空存储库
curl -k --header "PRIVATE-TOKEN: <your_private_token>" -H "Content-Type: application/json" -d '{"name":"<name_here>","path":"<the_same_name_here>","visibility_level":"10","namespace_id":"<id_of_my_group>"}' "https://192.168.5.6/api/v3/projects"
2。按照How can I use GitLab on one server and store all of the repositories on another?中的描述安装我们的存储库(包括更改权限 - 请参阅答案)