Domanda

Ho un file batch Io corro da un Windows XP w / service pack 3 workstation che applica le modifiche SQL per un database utilizzando sqlcmd.exe in SQL 2005.

Ho una voce di riga di comando per TortoiseSVN per aggiornare automaticamente la copia locale del mio repository in questo modo:

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

la documentazione , la / closeonend :. 3 lascerà finestra di dialogo TortoiseSVN aperto se eventuali errori, conflitti o si fonde si verificano durante l'aggiornamento

Se ad esempio si verifica, e l'utente chiude la finestra di dialogo senza risolvere i problemi, che potrebbero potenzialmente omettere le modifiche che vogliamo applicata al database di test di un determinato ramo.

Quando la finestra di dialogo TortoiseSVN è chiusa in caso di errore, conflitto, o unire dopo un aggiornamento, sarà il ERRORLEVEL essere impostato su un qualche non nullo valore, consentendo mi per ignorare il resto del file batch? O sarà volentieri 0 per indicare che ha fatto il suo lavoro con successo, anche se il codice non è giusto?

È stato utile?

Soluzione 2

Ho finito solo aggiornare manualmente il mio repository SVN locale prima di eseguire le altre azioni nel file batch.

Altri suggerimenti

vecchia questione, ma ho incontrato la stessa cosa oggi e c'è una soluzione ...

TortoiseProc restituisce -1 in caso di errore e 0 in caso di successo, in modo che il seguente risolto il problema per me:

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
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top