0
点赞
收藏
分享

微信扫一扫

git bash shell 脚本 :从文件获取git仓库列表 git clone所有仓库


前言

  • 如果有很多的git 仓库地址,一个个git clone 比较的繁琐,这时可以使用shell 脚本来做这件事情
  • 首先需要把所有的git 仓库的url(地址),放在一个指定的文件内,执行shell脚本,读取文件,获取所有的git clone 的地址,依次clone

功能简介

  • 从文件获取git 仓库的列表,文件:​​git_urls.cfg​​,实例内容如下

git bash shell 脚本 :从文件获取git仓库列表 git clone所有仓库_bash

git@gitee.com:zhangsz0516/crc16_calc.git
git@gitee.com:zhangsz0516/lpms.git
git@gitee.com:zhangsz0516/pm_tools.git

  • 【备注】使用时,git 仓库地址改为自己的仓库地址
  • 依次 git clone 所有的仓库,Linux shell 脚本 ​​cat​​命令,可以获取文件的内存,并且默认自动以【空白符】分隔,所以git 仓库列表使用【回车】,一行一个git 仓库地址即可

git clone all 脚本

  • 脚本内容如下:

#! /bin/bash
function git_clone_all() {
git_cfg="git_urls.cfg"
git_url_list=`cat $git_cfg`
# echo $git_url_list
for url_path in $git_url_list
do
echo "git url : $url_path"
echo "git clone $url_path"
git clone $url_path --recurse-submodules
echo ">>>>>>>>>>>>>>>>>>>>"
done
}
echo "--- git clone all start ---"
git_clone_all $PWD
echo "--- git clone all end ---"
echo "---------------------------"

运行效果

  • 在​​git_urls.cfg​​ 填写 git clone 的仓库列表
  • shell中执行:​​./git_clone_all.sh​
  • 当git 仓库【不存在】时:
  • 当 git 仓库【存在】时:

git bash shell 脚本 :从文件获取git仓库列表 git clone所有仓库_github_02

  • 可以配合前面的 git pull all shell 脚本,实现 git clone 与 git pull 功能

小结

  • 灵活使用shell 脚本,让重复的工作交给计算机自动执行,提高效率
  • git clone all 在clone 较多工程时,有点用处
  • 配合 git pull all的脚本,可以让git 仓库更新自动化


举报

相关推荐

0 条评论