检测.bat中的svn变化

ace*_*mtp 9 svn

我有一个.bat,在.bat里面我想执行一个特殊的代码,如果在svn存储库中有一些修改(例如,编译).

Too*_*ony 6

对于Win 2000及更高版本,这会将svn status commmand中的最后一个输出行分配给svnOut变量,然后测试该变量是否包含任何内容:

@echo off
set svnOut=
set svnDir=C:Your\path\to\svn\dir\to\check
for /F "tokens=*" %%I in ('svn status %svnDir%') do set svnOut=%%I

if "%svnOut%"==""  (
    echo No changes
) else (
    echo Changed files!
)
Run Code Online (Sandbox Code Playgroud)

为什么会有这样的一条线

set svnOut=
Run Code Online (Sandbox Code Playgroud)

你必须弄清楚自己.;-)