批量更新文件夹下的所有git项目
1. 应用场景
多台电脑工作的时候,多个项目有更新,但是某一台本地太久没有同步了
2. 创建脚本
创建脚本git_pull_work.sh
,
- 更新文件家下的所有git 项目,
- 同步更新本地所有分支
#!/bin/bash
# 批量更新github
cd $1
for file in ./*
do
if test -d $file
then
{
echo $file 是目录,尝试更新
cd $file
for BRANCH in `git branch --list|sed 's/\*//g'`;
do
git checkout $BRANCH
git pull
echo -e "\n$file:$BRANCH: git pull 执行完成"
done
git checkout master;
echo -e "\n$file 执行完成\n"
cd ../
}
fi
done
wait
echo $date # 脚本开始时间
exec /bin/bash
3. 执行脚本
powershell
.\git_pull_work.sh g:\github
或者linux
./git_pull_work.sh [文件目录]