更新脚本
@echo off
SETLOCAL ENABLEDELAYEDEXPANSION
REM RootFolder修改成trunk目录
set RootFolder=C:\Projects\XXX
cd /d %RootFolder%
REM UpdateFolders里列举你感兴趣的目录,用*分割
set UpdateFolders=Folder1*Folder2
start TortoiseProc /command:update /path:"!UpdateFolders!" /closeonend:2
提交脚本:
@echo off
REM 配置项目根目录
set projectRoot=C:\Projects\XXX
REM 配置需要提交的目录和需要排除的目录
REM 除空行外,每行开头配一个需要提交的目录,如果该目录下存在要排除的目录,在该目录后加上“#”,然后列举所有要排除的目录,用逗号隔开
REM 除空行和最后一行,行尾需要加上“^”,并且后面需要接上一空行
set commitPath=Folder1^
Folder2#SubFolder1,SubFolder2,File1^
Folder3
REM 配置结束
@echo off
setlocal EnableDelayedExpansion
set LF=^
cd /d "%projectRoot%"
set generatedPath=
for /f "delims=" %%i in ("!commitPath!") do (
for /f "tokens=1,2 delims=#" %%a in ("%%i") do (
set excludeList=%%b
if "!excludeList!" == "" (
set generatedPath=%%a*!generatedPath!
) else (
for /f "usebackq delims=" %%f in (`dir "%%a" /a /b`) do (
set isExcluded=false
for %%l in ("!LF!") do (
for /f "delims=" %%k in ("!excludeList:,=%%~l!") do (
if "%%f" == "%%k" set isExcluded=true
)
)
if "!isExcluded!" == "false" set generatedPath=%%a\%%f*!generatedPath!
)
)
)
)
start TortoiseProc /command:commit /path:"!generatedPath!"