利用python迁移gitlab中项目

本文介绍如何利用Python调用GitLab API来迁移项目,包括思路、手工同步方法和Python自动化实现。前置条件需要熟悉Git、GitLab API以及Python。提供了一个简单的`main.py`示例代码和配置文件`python-gitlab.cfg`。
摘要由CSDN通过智能技术生成

利用python迁移gitlab中项目

思路

  • 利用python 调用gitlab api 获取项目信息,创建信息,并同步项目
  • 由于python 调用同步项目代码较多,可以通过python 生成同步的脚本

手工同步gitlab 的方式

## 这种方式适合单向同步,git迁移;由于该种方式会完全替换目标的工程,不适合双向同步的
## 从源gitlab克隆镜像到本地
git clone --mirror git@gitlab1.com:group-name/project-name.git
## 进入克隆的镜像目录
cd project-name.git
## 将克隆的镜像推送至目标
git push --mirror git@gitlab2.com:group-name/project-name.git

利用python 同步项目

由于精力有限,工作较多,实现成了利用python 同步创建空工程,并生成上述手工脚本。

前置技能要求

  • 了解Git工作方式,能理解上述手工同步的原理
  • 了解gitlab,并了解gitlab api的原理机制
  • 同步项目利用了python-gitlab这个库(v2.5.0,支持gitlab v4 版本api, gitlab 10.0 以上版本支持(具体翻gitlab官方文档))
  • python 版本3.7.X 需要使用pip安装python-gitlab

代码

  • main.py
import gitlab
import time
import os

def main():
    # 主要业务逻辑
    #print('begin')
    # 配置
    # 目标仓库
    tempDir = '/d/temp'
    whGitlab = gitlab.Gitlab.from_config('wh', 'python-gitlab.cfg')
    # 源仓库
    kfbGitlab = gitlab
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值