手把手教你在多个gitlab库之间同步代码(镜像)

概述

gitlab已经非常强大了,不仅可以导入gitlab自身的代码库,还可以导入外部的代码库,如:GitHub、Gitea、Repository by URL等

那么,当有多个代码库的时候(比如:一个是主库,用于读写,另一个用于备份<虽然备份有多种形式>),如何做到在多个代码库之间同步代码呢?

其实gitlab已经提供了同步代码的功能,无须借助外部工具即可实现代码在多个库之间的同步~~~

准备工作

假设我们有两个gitlab的服务器:
一个名为master url为:http://192.168.0.166
另一个名为slave, url为:http://192.168.0.168

master服务器上,有一个名为iDemo的代码库

现在的需求是,把 master上的iDemo的代码库,完整的同步到slave服务器,当然有很多种方法,比如:克隆了iDemo之后,直接推送到slave服务器上,导出工程的完整的数据再导入;

这次我们不采用上面的方法,而是采用gitlab自带的功能来达到同步代码的目的(可以随时同步)

iDemo代码库

master服务器上的iDemo的代码库如下:
在这里插入图片描述
这个代码库上,有一个demo.cc文件,位于dev分支上

让我们开始吧

slave服务器上创建一个名为iDemo的空白的代码库

在这里插入图片描述
创建完成后如下:
在这里插入图片描述

在master服务器上做如下配置:

在这里插入图片描述
最后保存

打开iDemo代码库:

在这里插入图片描述
展开Mirroring repositories
然后在Git repository URL里填写slave 服务器上的iDemo的URL,URL的格式如下:
http://用户名@192.168.0.168/ai/iDemo.git 一定要写上slave服务器的拥有iDemo库权限的用户名,否则同步会失败的
如下所示:
在这里插入图片描述
最后点击Mirror repository保存,如下所示:
在这里插入图片描述

开始同步

点击右侧的那个同步图标,即可开始同步:
在这里插入图片描述

根据库的大小和网络的情况,过一会儿刷新一下些界面:
在这里插入图片描述
可以看到,同步成功了

slave服务器的iDemo上检查一下:

在这里插入图片描述
可以看到,已经把dev/master分支同步过来了,包括所有的提交记录也完整的同步过来了

那么,可以实现定时同步吗?

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ztenv

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值