运维 git仓库迁移所有分支脚本

运维(38) git仓库迁移所有分支脚本

郑清 于 2022-06-15 16:42:14 发布 259 收藏

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

文章目录

一、使用

# sh git-move.sh 旧仓库地址.git 新仓库地址.git
sh git-move.sh https://gitee.com/zhengqingya/docker-compose.git https://gitee.com/zhengqingya/test-git-move.git

在这里插入图片描述

二、git仓库迁移所有分支脚本

可参考:https://gitee.com/zhengqingya/shell

#!/bin/bash

####################################
# @description git仓库迁移(所有分支)
# @params $? => 代表上一个命令执行后的退出状态: 0->成功,1->失败
#         ${1} => 脚本第1个参数:旧仓库地址.git
#         ${2} => 脚本第2个参数:新仓库地址.git
# @example => sh git-move.sh https://gitee.com/zhengqingya/docker-compose.git https://github.com/zhengqingya/docker-compose.git
# @author zhengqingya
# @date 2022/6/15 16:01
####################################

# 在执行过程中若遇到使用了未定义的变量或命令返回值为非零,将直接报错退出
set -eu

# 检查参数个数
if [ "${#}" -lt 2 ]; then
	echo "\033[41;37m 脚本使用示例: sh git-move.sh https://gitee.com/zhengqingya/docker-compose.git https://github.com/zhengqingya/docker-compose.git  \033[0m"
	exit
fi

echo "****** 拉取旧仓库地址:   ${1}"
git clone --bare ${1}

echo "****** 进入仓库名称:    ${1##*/}"
cd ${1##*/}

echo "****** 迁移到新仓库地址:${2}"
git push --mirror ${2}

今日分享语句:
不要忘了给自己一点赞美。

posted @ 2022-11-28 18:29  谢端阳  阅读(50)  评论(0编辑  收藏  举报