Pergunta

Eu tenho um arquivo de lote que eu estou correndo de um Windows XP w / serviço de estação de trabalho pack 3 que se aplica SQL muda para um banco de dados usando sqlcmd.exe no SQL 2005.

Eu tenho uma entrada de linha de comando para TortoiseSVN para atualizar automaticamente a cópia local do meu repositório assim:

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

De acordo com a a documentação , o / closeonend : 3. opção irá deixar esta janela TortoiseSVN caixa aberta Se ocorrerem erros, conflitos ou fusões durante a atualização

Se tal ocorrer, e o usuário fecha o diálogo sem resolver as questões, eles poderiam omitir mudanças que queremos aplicado ao banco de dados de teste de um determinado ramo.

Quando a caixa de diálogo TortoiseSVN está fechado no caso de um erro, conflito ou fusão após uma atualização, será o ERRORLEVEL ser ajustado para alguns diferente de zero valor, permitindo me para ignorar o resto do arquivo de lote? Ou será que vai felizmente voltar 0 para indicar que ele fez o seu trabalho com sucesso, mesmo se o código não está certo?

Foi útil?

Solução 2

I terminou apenas atualizar manualmente meu repositório SVN local antes de realizar as outras ações no arquivo de lote.

Outras dicas

velha questão, mas eu encontrei a mesma coisa hoje e não há uma solução ...

retornos TortoiseProc -1 em erro e 0 em caso de sucesso, de modo que o seguinte resolveu o problema para mim:

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
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top