TortoiseSVN из командной строки и “ЕСЛИ УРОВЕНЬ ОШИБКИ”?

StackOverflow https://stackoverflow.com/questions/1174513

Вопрос

У меня есть пакетный файл, который я запускаю с рабочей станции Windows XP с пакетом обновления 3, который применяет изменения SQL к базе данных, используя sqlcmd.exe в SQL 2005.

У меня есть запись в командной строке для TortoiseSVN Черепаха чтобы автоматически обновить локальную копию моего репозитория следующим образом:

tortoiseproc /command:update /path:"C:/SVN/My Code/Dev/2009.07.23" /closeonend:3

Согласно документация, тот /завершение:3 опция оставит диалоговое окно TortoiseSVN открытым, если во время обновления возникнут какие-либо ошибки, конфликты или слияния.

Если такое происходит, и пользователь закрывает диалоговое окно, не решив проблемы, они потенциально могут пропустить изменения, которые мы хотим применить к тестовой базе данных данного филиала.

Когда диалоговое окно TortoiseSVN закрывается в случае ошибки, конфликта или слияния после обновления, будет ли УРОВЕНЬ ОШИБОК быть настроенным на некоторые ненулевое значение значение, позволяющее мне обойти остальную часть пакетного файла?Или он счастливо вернется 0 чтобы указать, что он успешно выполнил свою работу, даже если код не совсем правильный?

Это было полезно?

Решение 2

В итоге я просто вручную обновил свой локальный репозиторий SVN перед выполнением других действий в пакетном файле.

Другие советы

Старый вопрос, но сегодня я столкнулся с тем же самым, и есть решение...

TortoiseProc возвращает -1 при ошибке и 0 при успешном выполнении, поэтому следующее решило проблему для меня:

TortoiseProc /path:"%targetdir%" /command:update /closeonend:3
IF %ERRORLEVEL% NEQ 0 goto SvnError

:SvnSuccess
echo It worked!
goto Done

:SvnError
echo It didn't work!

:Done
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top