Ho il seguente nei miei .git/ganci/file di pre-commitPowerShell Git Codice Hook Exit
#!/bin/sh
exec c:/Windows/System32/WindowsPowerShell/v1.0/powershell.exe -ExecutionPolicy RemoteSigned -Command " Get-Location | % { '$_\pre-commit-hook.ps1'} | % { & $_ }"
exit
Questo viene eseguito correttamente il codice nel file pre-commit-hook.ps1
nella stessa directory, ma non cattura l'uscita codice. Secondo tldp.org, l'ultimo codice di uscita verrà restituito se viene specificata solo l'uscita. Gli hook Git falliranno se il codice di uscita non è zero, ma anche se il mio script PowerShell restituisce un codice di stato di 1, ha sempre successo. Cosa posso fare per acquisire il codice di uscita dallo script PowerShell in modo che l'hook funzioni correttamente?
Nello script prova ad aggiungere '[ambiente] :: Exit (1)' per restituire il codice diverso da zero per il chiamante. Se funziona, farò la mia risposta :-) –
no non funziona. Ho già avuto solo "exit 1" nella mia sceneggiatura ma non ha funzionato né –
ho pensato che potresti ... Perché a volte non funziona [http://stackoverflow.com/questions/8902004/powershell -fails-to-ritorno-corretta-uscita-codice/8902329 # 8902329). –