1,clone脚本 clone.sh
- #!/bin/bash
-
- # 定义一个包含多个仓库URL的列表
- repos=(
- "git@gitlab.test.com.cn:test/test/test/test.git"
- "git@gitlab.test.com.cn:test/test/test/test2.git"
- )
-
- # 遍历数组中的每个URL,并执行 git clone
- for repo in "${repos[@]}"
- do
- git clone "$repo"
- done
2,运行sh脚本 ./clone.sh
3,Windows 系统
需要批量拉取代码的git仓库都在 同一个文件夹下 ,bat脚本也在此文件夹下。
此脚本递归遍历当前路径下的文件夹,直到找到存在 .git 文件的文件夹,然后执行 git pull,然后继续遍历
创建一个bat文件git_pull_batch.bat
- @echo off
- setlocal
-
- @REM normalize the relative path to a shorter absolute path.
- pushd "%~dp0"
- set repos_path=%CD%
- popd
-
- call :find_and_pull %repos_path%
- echo Finished. & pause>nul
- goto :EOF
-
- ::-------------------------------------
- :: @name find_and_pull
- :: @param %1 base directory to find .git
- :: @usage call :find_and_pull %base_dir%
- ::-------------------------------------
- :find_and_pull
- for /d %%i in (%1\*) do (
- cd %%i
- if exist .git (
- echo %%i
- echo Start git pull.
- git pull
- ) else (
- call :find_and_pull %%i
- )
- )
- goto :EOF