python 拉取gitlab项目全部分支

场景:项目太多了,想都拉下来看看


在gitlab项目列表页面打开控制台执行,能获取到全部项目名称

var arr=[]
for (let index = 0; index < $(".project-full-name").length; index++) {
    arr.push($($(".project-full-name").get(index)).text().replace(/\n/g, ""))
}

直接通过cmd命令拉指定的项目,并拉取分支

import os
import subprocess

def download_projects(projects_list, git_base_url, local_base_path):
    for project_name in projects_list:
        remote_url = f"{git_base_url}/{project_name}.git"
        local_path = os.path.join(local_base_path, project_name)

        # 克隆远程仓库到本地
        subprocess.run(["git", "clone", remote_url, local_path])

        # 进入本地仓库目录
        os.chdir(local_path)

           # 获取远程分支列表
        branches = subprocess.run(["git", "branch", "-r"], capture_output=True, text=True, encoding='utf-8').stdout.splitlines()

        # 遍历远程分支并拉取代码
        for branch in branches:
            # 提取分支名
            remote_branch = branch.strip().split("origin/")[-1]

            # 切换到远程分支并拉取最新代码
            subprocess.run(["git", "checkout", remote_branch])
            subprocess.run(["git", "pull"])

if __name__ == "__main__":
    projects_list = [
      "root/project"
]  # 替换为您所有项目的名称列表
    git_base_url = "http://ip:port"
    local_base_path = "C:\\other\\back"

    download_projects(projects_list, git_base_url, local_base_path)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值