首页 > 解决方案 > 在 Github 中导入 Gitlab 项目

问题描述

我最近创建了一个 Gitlab 帐户,我想将其用作投资组合。我创建了一个包含一些内容的Github 页面。现在的问题是,我正在尝试将我在 Gitlab 中制作的所有项目导入我的 Github 帐户。我在谷歌和论坛上搜索过,有人建议我需要制作令牌,我试过了,但没有用。

我尝试使用个人资料附近的“+”按钮将单个 Gitlab 存储库逐字导入我的 Github 存储库。它不适用于消息“在https://git.osl.frl/JVeenswijk/pfSense未检测到源存储库。请检查 URL 并重试”(是的,项目设置为public)我相信从 Gitlab 导入无法正常工作。

所以我用令牌、导入甚至通过 Github 桌面尝试了它,但这些都不适合我。我觉得很奇怪 Github 和 Gitlab 很难相互连接,从我的角度来看,它们的功能几乎相同,但功能不同。

现在的问题是:

标签: gitgithubimportgitlab

解决方案


我刚刚成功地将存储库从 GitLab 转移到了 GitHub。

GitLab 中的存储库是private,这表明 GitHub Importer 不起作用,因此,我按照下面的链接进行操作。

来自 GitHub 官方网页的说明

脚步

  1. 在 GitHub 上创建一个新的存储库。您将把您的外部 Git 存储库导入到这个新存储库。
  2. 在命令行上,使用外部克隆 URL 对存储库进行“裸”克隆。这将创建数据的完整副本,但没有用于编辑文件的工作目录,并确保所有旧数据的干净、新鲜的导出。
    $ git clone --bare https://external-host.com/extuser/repo.git
    # Makes a bare clone of the external repository in a local directory
    
  3. 使用“镜像”选项将本地克隆的存储库推送到 GitHub,这可确保将所有引用(例如分支和标签)复制到导入的存储库。
    $ cd repo.git
    $ git push --mirror https://github.com/ghuser/repo.git
    # Pushes the mirror to the new GitHub repository
    
    4.删除临时本地存储库。
    $ cd ..
    $ rm -rf repo.git
    

推荐阅读