以下是我的代码:
@echo off
cd D:\Transversal Unit\example\ace__project\branches\UAT
set "sourceBranchURL=https://coconet-svn-in-01.capgemini.com/svn/repos/transitionportal/branches/BR_TEST"
svn merge -c39,46 --dry-run %sourceBranchURL%' 2>&1 | FINDSTR /I "conflict" > null
If %ERRORLEVEL% EQU 0 echo There were conflicts
cd D:\Transversal Unit\example\script
现在在这个合并中,我知道存在冲突,但FINDSTR在这种情况下不起作用。 输出为空白。没有任何东西被打印出来,这意味着它不会进入if条件。
答案 0 :(得分:0)
尝试这样的事情:
svn merge -c39,46 --dry-run %sourceBranchURL%' 2>&1 | FINDSTR /I "svn: E" > nul
If %ERRORLEVEL% EQU 0 echo There were conflicts
基本上,FINDSTR在svn: E
命令的输出中查找字符串“svn merge
”,我猜测它会识别错误并在出现错误时将ERRORLEVEL设置为零