把Git仓库从GitLab转移到GitHub – 我们可以,如何和陷阱(如果有的话)?

如果需要,可以将存储库从GitLab转移到GitHub。 如果是这样,我该怎么办呢?

另外,在这样做的时候还有什么缺陷,或者我在做这些之前需要谨记的预防措施,因为我可能决定最终把它们移到GitHub上(因为它有更多的function,可以在我的项目中find方便)。

你可以转移这些(只需通过添加一个遥控器到一个GitHub回购,并推动它们)

  • 在GitHub上创build一个空的回购
  • git remote add github https://yourLogin@github.com/yourLogin/yourRepoName.git
  • git push --mirror github

历史将是一样的。

但是你将失去访问控制(在GitLab中定义的团队在你的repo上具有特定的访问权限)

OP boddhisattva 报告有一个与GitHub回购的httpsurl问题:

 The requested URL returned error: 403 

所有你需要做的就是input你的GitHub密码,但是OPbuild议:

那么你可能需要推动它的SSH方式。 你可以阅读更多关于如何做到这一点。

请参阅“ 推送到Git返回错误代码403致命:HTTP请求失败 ”。

导入存储库function非常简单,login到github.com

个人资料图片的一面,你会发现+button点击,那么将有selectimport repository 。 你会发现这样的网页。 在这里输入图像说明 您的旧版本库的克隆url是必需的,这是您的情况下的gitlab repourl。 然后select所有者,然后为此回购input名称,然后单击以开始导入button。

我有相反的问题,最后不得不为公司创build自己的bash shell脚本,因为公司政策的变化,将Github上的数百个Repos迁移到了Gitlab。
该脚本使用Gitlab API远程创build一个回购,并推入Github回购。 目前还没有README.md文件,但是sh是有据可查的。
同样的事情可以以我想象的方式完成。 希望这可以帮助。
https://github.com/mahmalsami/migrate-github-gitlab/blob/master/migrate.sh