使用GitLab Mirrors同步Git仓库 private token在gitlab中10.2版本后取消了,用Personal Access Tokens代替

https://www.jianshu.com/p/70b138f88514?tdsourcetag=s_pcqq_aiomsg

https://www.jianshu.com/p/54bd32c4862b

一:首先安装git

apt-get install git

二:安装gitlab_mirror,所需的软件

apt-get install python-setuptools
git clone https://github.com/alexvh/python-gitlab3.git
cd python-gitlab3
git checkout v0.5.4
python setup.py install
或者使用
apt-get install python-pip
pip install python-gitlab

3 创建GitLab管理员账户并创建Group

  • 登录GitLab
  • 创建一个用户
  • 为该用户赋予管理员权限。简单起见,笔者使用root 这个GitLab的内置账户。
  • 在GitLab创建一个Group

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

找到~/.ssh/id_rsa.pub :

more /home/gitmirror/.ssh/id_rsa.pub

将内容贴到GitLab以及GitHub,方法比较简单,登录后找到SSH key的选项,然后粘贴即可。

执行如下命令,确保SSH key添加成功

ssh -T git@github.com
ssh -T git@localhost

如配置无误,会看到xxxx Success xxxx 的文字。

6 设置private token(gitlab10.2之前的可以,)

访问 http://localhost/profile/account (即:GitLab的账户设置地址),找到private token项,复制其中的private token值,贴到~/private_token 文件中。

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

gitlab10.2版本后的使用Personal Access Tokens  既profile->account->Personal Access Tokens

输入姓名 日期后勾选下面的四个选项,点击确认将生成的密码保存到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
    

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

  • 手动同步

    ./git-mirrors.sh
    
  • 定时同步

    @hourly /home/gitmirror/gitlab-mirrors/git-mirrors.sh

参考gitmirror提供的文档,使用pip install 安装即可

同步仓库到gitlab中时,碰得到让输入git密码的,需要设置git里面的信息,就是下面的3,4项,具体的可以参考下面的链接

Cloning into 'ldp'...
git@222.29.81.107's password: 
Permission denied, please try again.
git@222.29.81.107's password: 
Permission denied, please try again.
git@222.29.81.107's password

参考如下:

https://www.cnblogs.com/lixiaochao/p/6293316.html

(3)为自己配置身份,创建用户名和邮箱

      git config --global user.name "xiaochao"  
      git config --global user.email "188******@163.com" 

    (4)我们配置一个git用户和密码专门对代码进行管理。

    sudo useradd -m git                                      (创建用户)
    sudo passwd git      
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值