推送时自动将Gitlab回购镜像到Github

推送时自动将Gitlab回购镜像到Github,github,gitlab,Github,Gitlab,我正在寻找一种在推送时自动将我的Gitlab回购镜像到Github的方法。我使用Gitlab repos作为我的主repos,并且宁愿只推送到一个远程服务器。但是,我希望我的代码也可以在Github上浏览 我在StackOverflow上发现了类似的问题,例如 但答案总是一样的:应该在gitlab repo中添加一个自定义的post接收git钩子。这需要对运行Gitlab的服务器进行shell访问。由于我为许多用户(不仅仅是我)托管了社区版Gitlab,他们无法轻松访问shell(这不是最方便用

我正在寻找一种在推送时自动将我的Gitlab回购镜像到Github的方法。我使用Gitlab repos作为我的主repos,并且宁愿只推送到一个远程服务器。但是,我希望我的代码也可以在Github上浏览

我在StackOverflow上发现了类似的问题,例如

但答案总是一样的:应该在gitlab repo中添加一个自定义的post接收git钩子。这需要对运行Gitlab的服务器进行shell访问。由于我为许多用户(不仅仅是我)托管了社区版Gitlab,他们无法轻松访问shell(这不是最方便用户的方式),因此它不适合我的需要

我考虑了两种实现方法:

  • MirrorOnPush项目服务,在Ruby中实现这样一个git钩子,就像EmailOnPush项目服务目前所做的那样

  • 或者使用自定义服务器克隆和推送repo,使用webhook

第一个对我来说似乎更干净,但我找不到任何关于Gitlab项目服务和代码结构的文档……另一方面,第二个是一个糟糕而丑陋的黑客,但几乎是直截了当的

我宁愿实现一个项目服务来处理它。您是否有关于如何为Gitlab编写项目服务的文档或线索(无需阅读所有Gitlab源代码,因为似乎没有开发文档…)

谢谢

应该向gitlab repo添加一个自定义的
post-receive
git钩子

实际上,在7.xGitlab之前,这是最好的解决方案,正如我在“”中详细介绍的

要求回购镜像为true,但投票不够:建议:。
主要文件仍然是:

  • 文件夹
  • 文件夹
  • 这个,
  • 这个
这并不多,因为


因为这让你不得不采用黑客方法。

可能的重复虽然这是一个稍微有点限制的问题,但所有可能的答案都在这里提到了,而且将来可能会如此。我认为,另一个问题更以单用户为中心。但是,答案是有的……这篇文章也是关于为服务寻找文档的,但这似乎并不存在。