shell脚本--多个代码库批量pull最新master代码
介绍
经常会碰到这样的问题,自己有多个代码库,每次用IDE打开代码后,做的第一件事就是git pull origin master,也就是拉取远程master最新的代码。
这种其实是比较恶心的,如果同时打开多个代码库,就需要执行n次命令来获取最新代码,于是就想着写个脚本来完成所有项目的代码更新吧。
脚本也很简单,步骤如下:
1.进入包含所有项目的目录下;
2.利用ls查看所有的文件夹(每个文件夹都是一个项目);
3.将ls的结果进行遍历(利用xargs,将每一个目录占一行);
4.循环迭代,进入到每个项目的目录,然后切换到master分支并pull最新代码;
5.返回上一层
6.继续循环迭代;
原文地址:https://www.cnblogs.com/-beyond/p/13792838.html
脚本内容
脚本如下,命名为pull-master.sh
#/bin/bash projects_base_dir=$1 cd $projects_base_dir for project in `ls | xargs -n 1` do cd $project git checkout master &> /dev/null git pull origin master &> /dev/null echo "finish update " $project cd .. done
使用示例
假设~/code/projects目录下包含所有项目的代码,那么就将该路径作为脚本的参数,执行命令:
sh pull-master.sh ~/code/projects # 或者 # ./pull-master.sh ~/code/projects
如需转载,请注明文章出处,谢谢!!!