GitLab的GitHub仓库镜像:非所有者如何操作

3

目前我正在和一个朋友合作一个托管在GitHub上的项目。我个人想要使用CI,所以我使用我的GitHub凭据登录到GitLab,并导入了所有的仓库。这个仓库实际上是他的,但他将我添加为合作者。所以现在我想添加.gitlab-ci.yml 并使我的推送也传到GitHub。

我想要镜像这个GH仓库。当我进入GitLab仓库设置时,我发现它已经通过HTTPS镜像(拉取)了。但我有一个带有“禁用”文本的橙色框。当我将鼠标移到它上面时,它会显示类似于这样的内容:Disabled mirrors can only be enabled by instance owners [...]。我尝试通过SSH来镜像这个仓库,以为它可能会改变一些东西,但然后我收到了一个红色的错误提示框,上面写着一些我无法获取仓库的信息(我检查了我的SSH密钥,我的确有访问GH仓库的权限),但我想那可能是另一个问题。

那么我的问题是:如果我不是一个owner(我在GH上有pull和push权利),是否有可能配置推送/拉取到/从GitLab,使它们实际上去/来自这个GitHub仓库?

1个回答

3

这个可以在本地更容易地配置:

你克隆 GitLab 存储库并输入以下命令:

git remote set-url --add --push origin https://github.com/<auser>/<arepo>

然后,只需要简单的执行git push命令,就可以将您的提交同时推送到GitLab和GitHub,无需使用镜像选项。

好的,那CI呢?我的意思是,假设我在.gitlab-ci.yml上配置了一些测试。如果测试失败,我不希望提交被推送。那么它会只停在GitLab上还是同时停在GitHub上? - dabljues
1
@dabljues 那个配置纯粹是本地的。如果你想在 CI 级别上仅进行第二次推送,那么你可以配置 GitLab CI 流水线,在测试通过后进行 GitHub 推送。 - VonC

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接