AlicizaX/Client/Packages/commit.bat
2025-03-04 18:40:14 +08:00

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 [正在处理仓库] %%i
:: 拉取更新(如果启用)
if !DO_PULL! equ 1 (
echo 拉取最新更改...
git pull
if errorlevel 1 (
echo [错误] 拉取失败于 %%i
popd
goto :next_folder
)
)
:: 提交更改
git add .
git commit -m "modify"
if errorlevel 1 (
echo [信息] 无新更改或提交失败于 %%i
) else (
echo 推送更改到远程...
git push
if errorlevel 1 (
echo [错误] 推送失败于 %%i
)
)
) else (
echo.
echo [跳过] %%i 不是Git仓库
)
:next_folder
popd
)
:: 主动等待用户关闭
echo.
echo 所有操作已完成,按任意键关闭窗口...
pause >nul