Administrator
发布于 2024-08-06 / 24 阅读
0
0

git仓库迁移脚本

git_move.sh 脚本用于把git,从旧仓库,迁移到新仓库

git_move.sh 支持两个参数:源仓库地址,目的仓库地址

执行示例:

sh git_move.sh git@git.xxxx/test.git ssh://git@jr.xxxx.com/test.git

脚本执行前,必须确保如下几点:

1.目的仓库已经建好

2.源仓库与目的仓库,必须同时拥有权限

3.目的仓库必须是空仓库

sh git_move.sh 源仓库地址 目的仓库地址

git_move.sh 脚本内容


#!/bin/bash

gitFrom=$1
gitTo=$2
if [[ "${gitFrom}" == "" ]]; then
    echo "没有设置源仓库"
    exit
fi
if [[ "${gitTo}" == "" ]]; then
    echo "没有设置迁移后的仓库"
    exit
fi

## 进入仓库目录
projectPath=${gitFrom##*/}

if [[ -d "${projectPath}" ]]; then
    echo "源仓库拉取过,在 ${projectPath} 目录,不再重新拉取"
else
    ## 拉取旧源
    git clone --bare ${gitFrom}
fi

cd ${projectPath}

## 推送到新源
git push --mirror ${gitTo}


评论