我正在使用 Golang 和 GitLab CI,并且我有一个 GitLab CI 配置,它非常适合 12 个项目,但不适用于第 13 个项目。
我遇到的问题是我正在尝试go get
一些私人存储库,其中go get
尝试通过已关闭的 HTTPS 运行。
在其他存储库中有效的解决方案是这样的:
git config --global url."[email protected] /cdn-cgi/l/email-protection:".insteadOf "https://gitlab.my.site/"
然而,在这个项目的运行程序中,在同一个 GitLab 上,使用完全相同的配置(服务名称除外),会发生这种情况:
[...]
$ git config --global url."[email protected] /cdn-cgi/l/email-protection:".insteadOf "https://gitlab.my.site/"
$ cd ${APP_PATH}
$ go get
# cd .; git clone https://gitlab.my.site/group/project.git /go/src/gitlab.my.site/group/project
Cloning into '/go/src/gitlab.my.site/group/projects'...
GitLab: The project you were looking for could not be found.
fatal: Could not read from remote repository.
为什么它突然尝试通过 HTTPS 进行克隆?它仅在这个项目中持续发生,但在所有其他项目中都有效。我能想到的唯一原因是这个项目使用了很多不同的存储库,而不仅仅是一两个,但我很难看出这将是实际的问题。
我该如何解决这个问题?
Thanks.
找到了答案,这很愚蠢,当然,这是我的错。我没有将部署密钥添加到项目中,当然拒绝克隆。
要解决此问题,请在 GitLab 中转到存储库,然后选择“设置”>“存储库”并展开“部署密钥”。在那里,确保您尝试克隆的密钥可用并已启用。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)