GIT批量拉取代码shell脚本-创新互联

描述

指定git项目的父级目录,遍历目录下的所有工程,批量拉取代码

创新互联,为您提供成都网站建设公司成都网站制作、网站营销推广、网站开发设计,对服务成都航空箱等多个行业拥有丰富的网站建设及推广经验。创新互联网站建设公司成立于2013年,提供专业网站制作报价服务,我们深知市场的竞争激烈,认真对待每位客户,为客户提供赏心悦目的作品。 与客户共同发展进步,是我们永远的责任!
sh git_batch_pull.sh $1 $2
  • 参数$1:目录
  • 参数$2:需要进几次目录执行git命令,<1在当前目录执行git命令

使用方式如下:

>sh git_batch_pull.sh workspace/demo/helloworld 0
>sh git_batch_pull.sh workspace/demo 1
>sh git_batch_pull.sh workspace 2
脚本源码git_batch_pull.sh
#指定git项目的父级目录,遍历目录下的所有工程,批量拉取代码
#参数$1:目录
#参数$2:需要进几次目录执行git命令,<1在当前目录执行git命令
#使用方式如下:
#>sh git_batch_pull.sh workspace/demo/helloworld 0
#>sh git_batch_pull.sh workspace/demo 1
#>sh git_batch_pull.sh workspace 2

#! /bin/bash
function deal_dir(){if [ 1 -lt $2 ] #是否下处理下一级目录
then
echo "########################################################################"
echo 'parent dir->level['$2'], path['$1'/'$3']'
echo "------------------------------------------------------------------------"
read_dir $1'/'$3 `expr $2 - 1` $3
echo "########################################################################"
else
echo 'dir->level['$2'], path['$1'/'$3']'
sh -c 'cd '$1'/'$3' && git pull'
fi
}

function deal_file() {echo 'file->level['$2'], path['$1'/'$3']'
}

function read_dir(){if [ 0 -lt $2 ] #是否下处理下一级目录
then
for file in `ls $1`
do
if [ -d $1'/'$file ] #是否目录
then
deal_dir $1 $2 $file
else
deal_file $1 $2 $file
fi
done
else
echo 'dir->level['$2'], path['$1 $2']'
sh -c 'cd '$1' && git pull'
fi
}
read_dir $1 $2

你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧


当前题目:GIT批量拉取代码shell脚本-创新互联
转载源于:http://myzitong.com/article/eesei.html