鄙人有个习惯,每天上班打开电脑第一件事,就是把所有本地git仓库拉取更新,保证取到最新的代码。 但本地git仓库实在太多,挨个执行 git pull 太麻烦,于是决定写下一个bat脚本,把这种重复的事情交给电脑。
运行前注意
- 你使用的是 Windows 系统
- 你需要批量拉取代码的git仓库都在 同一个文件夹下 ,bat脚本也在此文件夹下。
- 此脚本递归遍历当前路径下的文件夹,直到找到存在 .git 文件的文件夹,然后执行 git pull,然后继续遍历…
git_pull.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
|