在gitlab中打开一个项目时,你会在项目主页的顶部看到SSH和HTTP(或HTTPS)url,SSH url是默认的,但我想将HTTP(或HTTPS)设置为默认值,所以我应该怎么做?感谢
答案 0 :(得分:10)
实际上,您必须修改默认克隆协议之上的其他两行。
def default_url_to_repo(project = nil)
project = project || @project
current_user ? project.http_url_to_repo : project.url_to_repo
end
def default_clone_protocol
current_user ? "http" : "ssh"
end
答案 1 :(得分:8)
app/views/shared/_clone_panel.html.haml
文件确实显示:
.git-clone-holder.input-group
.input-group-btn
%button{class: "btn #{ 'active' if default_clone_protocol == 'ssh' }", :"data-clone" => project.ssh_url_to_repo} SSH
%button{class: "btn #{ 'active' if default_clone_protocol == 'http' }", :"data-clone" => project.http_url_to_repo}= gitlab_config.protocol.upcase
而且default_clone_protocol在app/helpers/projects_helper.rb
def default_clone_protocol
current_user ? "ssh" : "http"
end
因此,您可以更改该代码,或在config/gitlab.yml.example
中添加设置,以使其成为参数。
正如Mosi Wang answer所述,函数default_url_to_repo
也在该订单的定义中起作用,因为它返回project.url_to_repo : project.http_url_to_repo
。
撤销订单也有帮助。
答案 2 :(得分:1)
在同一台机器上运行多个Gitlab帐户时,我偶然发现了这个问题,该帐户需要有关访问协议的不同设置,但是我看到的每个帖子都与全局设置的更改有关。为了避免配置问题,我寻找了一种在本地更改每个项目的设置的方法。以下步骤解决了我的问题:
cd my_project / .git
打开浏览器。导航到Gitlab存储库。单击蓝色的“克隆”按钮。复制URL以通过https进行克隆。
再次切换到终端。编辑位于.git文件夹中的名为“ config”的文件。我使用“ Vim”进行编辑。
vi config
url = “粘贴复制的网址”
答案 3 :(得分:-1)
如果这对您仍然很重要,请考虑对https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/1811或https://gitlab.com/gitlab-org/gitlab-ce/issues/3504发表评论。如果此请求获得批准,它将解决您在标准产品中的问题。正在考虑合并请求"正如我们所说"。