Gitlab(3)_GitLab Mirrors同步Git仓库

案例:远端github 本地gitlab 同步项目
1.安装Git

yum install git -y

2.安装GitLab Mirrors所需软件(需要python2)

yum install python-setuptools  epel-release -y
yum install python-pip -y
pip install python-gitlab -y

3.创建GitLab管理员账户并创建Group
登录GitLab->创建一个管理员用户(可用root)->GitLab创建一个Group
4.创建一个系统用户,并生成SSH key

adduser gitmirror   # 创建用户gitmirror
su - gitmirror  # 切换到用户gitmirror
ssh-keygen  # 生成SSH key,一路输入Enter键即可

5.为GitLab(镜像仓库)、GitHub(原始仓库)配置免密码登录

cat ~/.ssh/id_rsa.pub   #将内容贴到GitLab以及GitHub
#执行如下命令,确保SSH key添加成功
ssh -T git@github.com
ssh -T git@localhost
#如配置无误,会看到xxxx Success xxxx 的文字

6.设置private token
访问 http://localhost/profile/account (即:GitLab的账户设置地址),找到private token项,复制其中的private token值(刷新gitlab页面后token值会消失),贴到~/private_token 文件中。
在这里插入图片描述

su - gitmirror
cd ~
touch private_token  #粘贴private token中的内容 

7.创建本地仓库路径:GitLab Mirrors会将GitHub上的代码clone到本地,默认是~/repositories

cd ~
mkdir repositories

8.配置GitLab Mirrors
#下载gitlab-mirrors项目

git clone https://github.com/samrocketman/gitlab-mirrors.git
cd gitlab-mirrors
chmod 755 *.sh
cp config.sh.SAMPLE config.sh

修改config.sh文件,该文件中配置项非常多,主要修改的有如下几处:

# gitmirror所运行的用户
system_user="gitmirror"
 你在gitlab上建立的group
gitlab_namespace="Mirrors"
# gitlab的地址
gitlab_url="http://localhost"
# gitlab的管理员账户
gitlab_user="root"

9 镜像仓库
添加仓库同步配置:

cd gitlab-mirrors
./add_mirror.sh --git --project-name test --mirror git@github.com:itmuch/test.git
#--project-name test  //test为本地项目仓库

这样,就可以将github.com中的指定仓库,同步到GitLab中指定Group中的test 仓库中去。
手动同步

./git-mirrors.sh

定时同步

@hourly /home/gitmirror/gitlab-mirrors/git-mirrors.sh
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值