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

  

 

posted @ 2020-10-10 16:57  寻觅beyond  阅读(1147)  评论(0编辑  收藏  举报
返回顶部