当前位置: 首页 > news >正文

如何从 GitHub 镜像仓库到极狐GitLab?

最近 GitHub 封禁中国用户的事情闹得沸沸扬扬,虽然官方发布的报道说中国用户被限制登录是因为配置错误导致,已经撤回了更新,中国用户已经可以正常使用。但是这就像横在国内开发者和企业头上的“达摩克利斯之剑”。为了避免 GitHub 不可用而带来的影响,国内开发者和企业可以有两种应对之策:完全迁移到极狐GitLab 和将 GitHub 仓库镜像到极狐GitLab。

关于从 GitHub 到极狐GitLab 的迁移指南,可以参考过往的文章 GitHub 到极狐GitLab 的迁移指南。本文详细解读将 GitHub 镜像到极狐GitLab 的方法,具体步骤为:

  • 创建 GitHub 个人访问令牌
  • 导入 GitHub 项目
  • 在极狐GitLab 上添加拉取镜像

极狐GitLab 镜像功能

极狐GitLab 仓库镜像功能是将仓库镜像到外部来源或将外部来源镜像为极狐GitLab 仓库。你可以选择哪个仓库作为源。分支、标签和提交会自动同步。镜像的方法有:

  • *推送:将仓库从极狐GitLab 镜像到其他位置。
  • 拉取:从其他位置镜像仓库。适用于专业版和旗舰版版本。
  • 双向镜像也可用,但可能会导致冲突。

要想将 GitHub 仓库镜像到极狐GitLab,选择 拉取 方式即可。关于极狐GitLab 仓库镜像功能可以查看官方文档。

从 GitHub 镜像到极狐GitLab

将极狐GitLab 作为 GitHub 仓库的镜像点,首先需要将 GitHub 仓库导入极狐GitLab,然后配置好镜像,就能够实现 GitHub 仓库的变更被定期拉取到极狐GitLab。

创建 GitHub 个人访问令牌

从 GitHub 导入项目需要 GitHub 个人访问令牌。在 GitHub 上,点击右上角头像 > Settings > Developer Settings > Personal access tokens,选择 Token (classic) ,点击 Generate new token(classic):

请添加图片描述

在出现的页面中,选择合适的范围即可。必选的范围是 repo,这能够用于显示可供导入的公共和私有仓库列表;建议的范围是 read:org,这用于从 GitHub 仓库导入协作者,或者你的项目具有 Git LFS 文件。

将 GitHub 仓库导入极狐GitLab

选定你想要镜像的 GitHub 仓库。在极狐GitLab 上先导入此项目。在极狐GitLab 页面上选择 新建项目 :

请添加图片描述

选择 导入项目 :

请添加图片描述

选择 GitHub :

请添加图片描述

输入前面生成的个人访问令牌,点击 验证,验证通过就会列出 GitHub 上可以导入的项目:

请添加图片描述

选择要导入的项目,选择需要导入的 GitLab 目标路径,点击右侧的 导入,项目就开始导入了,可以看到导入的进度和条目:

请添加图片描述

导入完成后,即可在极狐GitLab 对应的目标路径上看到对应的项目:

请添加图片描述

配置拉取镜像

前面的步骤只是完成了 GitHub 仓库的导入,但是 GitHub 上仓库的变更却没办法更新到极狐GitLab 这边。随着时间的变更,两边的差距会越来越大。为了解决此问题,可以在极狐GitLab 上,将 GitHub 的项目设置为仓库镜像,这样,通过定期从 GitHub 项目拉取变更并同步到极狐GitLab 项目上来保持两边项目的同步。

在极狐GitLab 上选择从 GitHub 导入的项目,选择 设置 > 仓库 > 镜像仓库 :

请添加图片描述

点击 添加新的,将 GitHub 上的项目地址作为 Git 仓库 URL,然后选择镜像方向,由于是从 GitHub 同步变更到极狐GitLab,因此镜像方向为 拉取 ,验证方式为用户名和密码,输入 GitHub 的用户名和密码即可,然后根据需要选择镜像的分支,最后选择 镜像仓库 :

请添加图片描述
仓库镜像成功,可以看到如下内容:

请添加图片描述

GitHub 上变更的默认拉取时间间隔为 5 分钟,如果是私有化部署实例用户,可以根据自己需要进行调整。方式可以参考拉取镜像间隔官方文档。

测试验证

为了验证这种拉取镜像的方式,可以在 GitHub 仓库上做一个变更,比如创建一个分支,看看是否能同步到极狐GitLab。

可以看到 GitHub 仓库上的默认分支只有 main:

请添加图片描述

手动创建两个分支 gitlab和 gitlab-mirror:

请添加图片描述

在对应的极狐GitLab 仓库上可以看到也只有一个 main分支,点击立即更新按钮:
请添加图片描述

可以在极狐GitLab 仓库的 项目 > 代码 > 分支 中看到对应的分支都同步了过来:

请添加图片描述

相关文章:

  • 2025年4月份生活有感
  • 【scikit-learn基础】--『监督学习』之 K-近邻分类
  • 第T8周:猫狗识别
  • 红帽Linux网页访问问题
  • 【工具变量】1907年大清邮政舆图数据集(高清图+PDF)
  • confluent-kafka入门教程
  • Windows 下 MongoDB ZIP 版本安装指南
  • 【Linux系统篇】:从匿名管道到命名管道--如何理解进程通信中的管道?
  • 《如何结合XMind和DeepSeek高效生成思维导图》
  • Obsidian 文件夹体系构建 -INKA
  • 华为OD机试真题—— 最少数量线段覆盖/多线段数据压缩(2025A卷:100分)Java/python/JavaScript/C++/C语言/GO六种最佳实现
  • 网工_传输层协议概述
  • 无感改造,完美监控:Docker 多阶段构建 Go 应用无侵入观测
  • 【ES6新特性】Proxy进阶实战
  • 第IV部分有效应用程序的设计模式
  • 驱动速腾雷达16线并用rviz显示点云
  • C++进程间通信开发实战:高效解决项目中的IPC问题
  • 【c语言基础学习】qsort快速排序函数介绍与使用
  • 3D开发工具HOOPS助力Hexagon智能制造突破技术瓶颈,重塑测量软件用户体验!
  • 算法——置换与排列【基础】
  • 酒店保洁员调包住客港币,海南官方通报:成立调查组赴属地调查
  • 天津外国语大学原校长修刚突发疾病去世,享年68岁
  • 习近平在中共中央政治局第二十次集体学习时强调,坚持自立自强,突出应用导向,推动人工智能健康有序发展
  • 一年吸引30多万人次打卡,江苏这个渔村是怎么做到的?
  • 美联储报告披露关税战冲击波:消费信心下降,经济担忧加深
  • 神舟二十号载人飞船与空间站组合体完成自主快速交会对接