Logo Vincent
返回文章列表

Gitlab代码同步到Github

工具
Gitlab代码同步到Github

【背景】

公司的代码一直在内网的gitlab上,

包括日常的代码提交,代码review,代码项目管理,人员管理等,

目前有新业务需要部署到海外aws上,

也就是说需要从海外aws上拉取国内阿里云内网的gitlab代码,

常见的几个方案

  1. 国内gitlab到国外aws走跨境专线
  2. 手动将代码同步到github等
  3. 自动将代码同步到github等

方案1没必要,太贵

方案2,3中肯定首选方案3

【方案】

日常的代码管理,人员管理还是内网gitlab

通过使用gitlab镜像功能自动将代码同步到github

aws从github拉代码

【同步】

创建github项目

首先在github上创建一个新账号,例如xx-robot,

如果需要同步的是内网gitlab的test项目,

那么在github这个账号下创建对应的test项目,

设置gitlab镜像

在gitlab-test项目-设置-仓库-镜像仓库中进行设置,

这里需要注意github的鉴权方式,

由于github禁用了个人username+password拉取代码的方式,

这里需要使用github新提供的个人token的方式

github-token

在github-settings中,选择developer settings

然后在personal access tokens中选择生成token

note这里随便写一个名字,

过期时间按自己的需求选择,这里选择不过期,

权限也按自己需求选择,这里全部选中,

将生成的token复制出来,

gitlab镜像url

使用上面复制好的token,以及username和reponame,拼接一个url,如下

https://${token}@github.com/${username}/${reponame}.git

将拼接好的url填入镜像仓库内,

密码不填,

可以选择仅镜像保护分支,

【触发同步】

至此,gitlab同步到github已经完成,如下

可以点击右侧刷新按钮,触发一次同步,

或者后续每次保护分支有push操作都会同步,

© 2026 vincentqiao.com . 保留所有权利。