有时候在某个目录下有很多git工程,每次一个个的git pull非常的不方便,所以写了一个小脚本,每次运行一下就可以了,相当方便,如下:
#!/bin/bash
function showMsg()
{
echo -e "\033[32m$1\033[0m"
}
function getdir(){
for element in `ls $1` #通过 ls root_dir 遍历出子目录,装入子目录 element 中
do
dir_or_file=$1"/"$element #将根目录 $1 与子目录 element 拼接成完整的目录
if [ -d $dir_or_file ] #判断:是目录的继续下一步
then
cd $1"/"$element
showMsg 'git pull '$element
git pull
echo #打印空行
else
echo $dir_or_file #是文件的输出文件名
echo #打印空行
fi
done
}
root_dir="/Library/Workspace" #定义根目录,即项目 project 的上级目录。例如:/Library/Workspace
getdir $root_dir
只要替换一下root_dir的路径就可以了
将git pull 替换一下,就可以作为另一个脚本使用,比如,替换为 git gc 可以压缩 git 库
转自:简书:枫山别院
转自:CSDN:KissedBySnow