49 lines
1.1 KiB
Batchfile
49 lines
1.1 KiB
Batchfile
@echo off
|
||
setlocal enabledelayedexpansion
|
||
|
||
:: 参数处理:使用/pull参数先拉取更新
|
||
set DO_PULL=0
|
||
if /i "%~1"=="/pull" set DO_PULL=1
|
||
|
||
:: 遍历当前目录下的所有子目录
|
||
for /d %%i in (*) do (
|
||
pushd "%%i"
|
||
if exist ".git" (
|
||
echo.
|
||
echo [Process Git Library] %%i
|
||
|
||
:: 拉取更新(如果启用)
|
||
if !DO_PULL! equ 1 (
|
||
echo Pull New Changed...
|
||
git pull
|
||
if errorlevel 1 (
|
||
echo [Error] pull failed %%i
|
||
popd
|
||
goto :next_folder
|
||
)
|
||
)
|
||
|
||
:: 提交更改
|
||
git add .
|
||
git commit -m "modify"
|
||
if errorlevel 1 (
|
||
echo [inffo] NoChange or commit failed for %%i
|
||
) else (
|
||
echo Commit Change to Remote ...
|
||
git push
|
||
if errorlevel 1 (
|
||
echo [Error] Push Failed %%i
|
||
)
|
||
)
|
||
) else (
|
||
echo.
|
||
echo [Skip] %%i Not Git Library
|
||
)
|
||
:next_folder
|
||
popd
|
||
)
|
||
|
||
:: 主动等待用户关闭
|
||
echo.
|
||
echo Commit Finished,Please Input Any key to Close...
|
||
pause >nul |