有这种需求,需要GitLab上的现有代码库,同步到GitHub上。

又有一种需求,需要将GitHub上的代码库,同步到gitlab上。

一.GitLab上的代码库,自动同步到GitHub上

  大致需要三步

1》在GitHub上创建私有访问Token,token就是只有一部分权限的密码【和你的登录密码相比,你的登录密码拥有完全的权限】【所以本步骤可以不进行,直接使用github的登录密码也是可以的】【1-6步】

2》需要在github上创建一个空代码库,提供URL地址,供gitlab使用【7步】

3》在GitLab上配置镜像地址,完成同步【8-13步】

1.登录GitHub,在右上角头像处,选择setting进入

2.左侧选择Developer setting进入

3.左侧点击personal  access tokens,进入

4.右上角点击generate  new token ,进入

5.选择要给新token赋予的权限

想要本token拥有操作代码库的权限,应勾选“repo”

点击页面下方的generate token按钮

6.保存生成的新的token到其他地方,之后你就看不到它了

token记录在这里【https://www.cnblogs.com/sxdcgaq8080/p/10531172.html

7.最后需要在github上创建一个空仓库,用来接收gitlab同步过来的代码库

【注意:我这里建立的是私有的代码库,如果是公有代码库,可以自己尝试,看是否会出问题!】

【如果是共有代码库,那么可以不使用上面生成的token,而使用你GitHub的登录密码,尝试一下!】

空的代码库生成,需要记录这个地址

https://github.com/AngelSXD/justjump.git

下面有用

8.进入gitlab,选择要同步的代码库,点击进去

9,光标移动到左侧设置,点击仓库

10.选择镜像存储库 展开

11.填写刚刚上面的那一串github的空代码库地址

但是注意地址需要加上username

原本的URL

https://github.com/AngelSXD/justjump.git

这里要填写的URL

https://AngelSXD@github.com/AngelSXD/justjump.git

username和后面的地址 以@隔开

密码处 填写的就是上面获取的token。

如果github中创建的是公有的仓库,可以尝试自己的github的登录密码填写此处,以或许更多更完整的权限!!!!

12.点击镜像存储库后,会在下侧生成

需要点击多次,直到看到 更新按钮圈圈开始转动,并显示更新中 即开始更新【此时就可去github查看同步过去的代码了】

【观察一下这里加密的URL格式:】

https://username:token或者password@github.com/AngelSXD/justjump.git

这也是之前版本的URL格式,只不过最新的gitlab版本,不需要密码写在URL中,而是填写在密码框!!!

好了 观察gitlab和github的同步情况!!!

gitlab显示

github显示

13.最后,可以在IDEA修改代码并发布至gitlab,测试是否会同步到github

gitlab上看到 已经提交的更新

github上面也自动同步到了【可能因为网路的问题,会慢一点,但是完全自动的,最终一定会同步的】【如果需要立即同步,一点延迟也受不了,则可以手动点击更新按钮,完成立即更新同步】

====================================================================================================================================

二、GitHub上的代码,拉取到GitLab上

这个方向很简单,只需要上面第一模块在github上生成的token。留作备用

1.在gitlab上新建一个项目

2.选择Import project 导入项目,并选择从github导入

3.点击从github导入后,需要在框中填入第一模块中在github中创建的token

注意说明,gitlab要求  github提供的token所包含的权限,是需要选择【repo】权限的,而第一模块中,咱们获取的token是勾选了repo权限的!!!

4.填写以后,点击右侧List your GitHub repositories,展示你的GitHub资源库列表

那现在选择你想拉取到gitlab的项目,点击后面的导入即可

点击后,会显示进行的状态

点击/root/swapping,可以跳转到当前拉取的项目的详情页【速度很慢,拉取很慢】

5.导入完成后,即可在gitlab上看到从github上拉取过来的项目

6.现在,想要从gitlab拉取clone项目到本地

可以去这篇看看https://www.cnblogs.com/sxdcgaq8080/p/10509660.html

=======================================结束=======================================

【GitLab】【GitHub】GitLab和GitHub的双向同步的更多相关文章

  1. 本地Git仓库与GitHub/GitLab仓库同步

    本地仓库即为在你的电脑上的项目文件,远程仓库即为服务器仓库,如GitHub.GitLab或其他等.此处以GitHub介绍本地仓库与远程仓库的同步.可先创建本地仓库,也可先创建GitHub仓库,但都需要 ...

  2. GitHub + VSTS 开源代码双向同步

    GitHub已经是全球开源代码的大本营了,通过以下统计你可以看到仅仅javascript在github就有超过32万个活动的repo.很多开发人员都会把自己的一部分代码分享到github上进行开源,一 ...

  3. github/gitlab 管理多个ssh key

    github/gitlab 管理多个ssh key 以前只使用一个 ssh key 在github上提交代码,由于工作原因,需要再添加一个ssh key在公司的 gitlab上提交代码,下面记录下配置 ...

  4. CentOS7上GitHub/GitLab多帐号管理SSH Key

    由于公司团队使用 GitLab 来托管代码,同时,个人在 Github 上还有一些代码仓库,可公司邮箱与个人邮箱是不同的,由此产生的 SSH key 也是不同的,这就造成了冲突 ,文章提供此类问题的解 ...

  5. 【Linux】配置SSH Key到GitHub/GitLab

    Linux配置SSH Key到GitHub/GitLab 准备工作 首先检查下本机是否已经安装了SSH,在终端输入ssh即可: 如果没有安装进行yum安装 # yum -y install opens ...

  6. GitHub && GitLab

    1.github介绍 Git作为一个开源的分布式版本控制系统,已经被越来越多的人使用,随之需要的就是需要有个专门的地方存储.管理通过Git上传的项目,这就是gitHub gitHub是一个面向开源及私 ...

  7. github/gitlab ssh-keys全局唯一

    我们知道,通过在gitlab.github上设置ssh-key,可以直接拉取代码:git clone …… 公司为了代码安全,会对代码访问权限进行控制,不同人有不同代码的访问权限. 有时候,为了临时获 ...

  8. Git版本控制 Git、github,gitlab相关操作

    目录 关于版本控制 版本管理工具 集中式管理 分布式管理 git版本管理 git介绍 软件安装 Git工作状态 原理流程步骤 git基本操作 对文件进行修改 分支 共享仓库 创建共享仓库: 共享仓库上 ...

  9. 【52ABP实战教程】0.3-- 从github推送代码回vsts实现双向同步

    需求 在之前的文章中"[DevOps]如何用VSTS持续集成到Github仓库" 我们有讲述如何将vsts中的代码编译推送到github中,这一篇我们来完善,如果有人给你开源项目推 ...

随机推荐

  1. easyui tree:根据属性格式化树节点名称

    $('#resourceTree').tree({ method : 'post', animate : true, onContextMenu : function(e, node) { e.pre ...

  2. js中parentNode,parentElement,childNodes,children

    首先了解parentNode,parentElement,childNodes,children四大属性之前,必须对Dom树有一定的了解,在Dom文档结构中,HTML页面每一部分都是由节点组成的,节点 ...

  3. NOIP 2000 计算器的改良

    题面 NCL是一家专门从事计算器改良与升级的实验室,最近该实验室收到了某公司所委托的一个任务:需要在该公司某型号的计算器上加上解一元一次方程的功能.实验室将这个任务交给了一个刚进入的新手ZL先生. 为 ...

  4. SprintBoot 1.2.8 入门

    现在SpringBoot官网Quick Start的版本是1.5.3,试了一下,报错说我JDK版本太低,查了一下说是需要JDK8,所以我使用了旧版本1.2.8,实际上在POM中的依赖配置方式一样的. ...

  5. pageHelper 排序 +- 字符串处理

    自己记录一下. 前端要把sort参数传过来, 1. 如果约定是下面这种形式: sort=id-name+age+ 直接在java后台进行替换就行,连正则都不用. sort = sort.replace ...

  6. 3D游戏开发之UE4中的集合:TSet容器

    好久没有更新了,最近一直在老家过年,网络不通的,今天才有时间更新一集. 一.TSet<T>是什么 UE4中,除了TArray动态数组外,还提供了各种各样的模板容器.这一节,我们就介绍集合容 ...

  7. C#开发Unity游戏教程之游戏对象的属性变量

    C#开发Unity游戏教程之游戏对象的属性变量 Unity游戏对象的属性——变量 通过对上一章的学习,读者应该了解到了,游戏对象上的属性与脚本中的变量,建立联系的方式就是将脚本赋予游戏对象.上一章只是 ...

  8. 什么是NAS

    个人理解: 1.NAS本身不是一种传输协议,只是一个名词而已,就是一个网络储存. 2.NAS系统本身就是一个Linux,也不是什么发行版,就是在Linux下实现了网络储存. 3.NAS系统里面实现了很 ...

  9. Windows访问Linux的Ext4格式分区

    Ext2Fsd是Windows下一套很实用的Driver,虽然名称是ext2fsd但ext3/ext4都可读取,安装完成后电脑便可直接认得ext格式扇区 虽然官方介绍只能支持到Windows 8,但实 ...

  10. 反编译APK文件的三种方法(转)

    因为学习Android编程的需要,有时我们需要对网络上发布的应用项目进行学习,可是Android项目一般是通过APK文件进行发布的,我们看不到源代码,嘿嘿,办法总会有的,而且不止一个... ps:对于 ...