TortoiseSVN 提供 TortoiseProc.exe 圖形界面自動化,但標準 SVN 命令行 svn.exe 更適合腳本集成。以下為標準流程:
svn add "D:\path\to\local\folder" --force
# --force 強制遞歸添加,忽略已版本控制項
svn commit -m "添加項目文件夾" "D:\path\to\local\folder"
# 或提交整個工作副本
svn commit -m "批量提交"
@echo off
set LOCAL_PATH=D:\Projects\MyProject
set SVN_URL=https://svn.example.com/repo/trunk
set MSG=自動提交 %date% %time%
svn add "%LOCAL_PATH%" --force
svn commit "%LOCAL_PATH%" -m "%MSG%"
pause
svn commit --username dev_user --password "secret" --no-auth-cache -m "msg"
# 先添加所有 .java 文件
for /r %LOCAL_PATH% %f in (*.java) do svn add "%f"
svn commit -m "僅提交 Java 源碼"
for /f "tokens=2" %%i in ('svn info ^| findstr "Revision"') do set REV=%%i
echo 當前版本: %REV%
若需彈出圖形對話框確認:
TortoiseProc.exe /command:add /path:"D:\folder" /closeonend:0
TortoiseProc.exe /command:commit /path:"D:\folder" /logmsg:"提交信息" /closeonend:1
/closeonend:0 保持對話框,1 自動關閉,2 僅錯誤時保持,3 無錯誤自動關閉。
svn.exe 命令行,適合 CI/CD 流水線svn update 避免衝突[模塊] 簡要描述 #工單號svn:needs-lock 屬性掌握 SVN 命令行,讓版本控制操作自動化、腳本化,提升團隊協作效率。