81 lines
1.6 KiB
Batchfile
81 lines
1.6 KiB
Batchfile
@echo off
|
|
chcp 65001 >nul
|
|
echo ========================================
|
|
echo TSP智能助手 - 自动推送脚本
|
|
echo ========================================
|
|
echo.
|
|
|
|
:: 检查Git状态
|
|
echo [1/4] 检查Git状态...
|
|
git status --porcelain >nul 2>&1
|
|
if %errorlevel% neq 0 (
|
|
echo ❌ Git未初始化或不在Git仓库中
|
|
pause
|
|
exit /b 1
|
|
)
|
|
|
|
:: 显示当前状态
|
|
echo 📋 当前Git状态:
|
|
git status --short
|
|
echo.
|
|
|
|
:: 询问是否继续
|
|
set /p confirm="是否继续推送? (y/n): "
|
|
if /i "%confirm%" neq "y" (
|
|
echo 操作已取消
|
|
pause
|
|
exit /b 0
|
|
)
|
|
|
|
:: 添加所有更改
|
|
echo.
|
|
echo [2/4] 添加所有更改到暂存区...
|
|
git add .
|
|
if %errorlevel% neq 0 (
|
|
echo ❌ 添加文件失败
|
|
pause
|
|
exit /b 1
|
|
)
|
|
echo ✅ 文件已添加到暂存区
|
|
|
|
:: 生成提交信息
|
|
echo.
|
|
echo [3/4] 生成提交信息...
|
|
for /f "tokens=*" %%i in ('git log --oneline -1') do set last_commit=%%i
|
|
set /p commit_msg="请输入提交信息 (直接回车使用默认): "
|
|
if "%commit_msg%"=="" (
|
|
set commit_msg=feat: 自动提交 - %date% %time%
|
|
)
|
|
|
|
:: 提交更改
|
|
echo 提交信息: %commit_msg%
|
|
git commit -m "%commit_msg%"
|
|
if %errorlevel% neq 0 (
|
|
echo ❌ 提交失败
|
|
pause
|
|
exit /b 1
|
|
)
|
|
echo ✅ 提交成功
|
|
|
|
:: 推送到远程仓库
|
|
echo.
|
|
echo [4/4] 推送到远程仓库...
|
|
git push origin main
|
|
if %errorlevel% neq 0 (
|
|
echo ❌ 推送失败
|
|
pause
|
|
exit /b 1
|
|
)
|
|
|
|
echo.
|
|
echo ========================================
|
|
echo ✅ 推送完成!
|
|
echo ========================================
|
|
echo 📊 提交统计:
|
|
git log --oneline -1
|
|
echo.
|
|
echo 🌐 远程仓库状态:
|
|
git status
|
|
echo.
|
|
pause
|