Estoy usando un pequeño script para fusionar la rama actual en el tronco y expulsarla. ¿Cómo puedo hacer que el script falle si falla nosetests?
#!/bin/bash
git checkout $1
nosetests
git checkout master
git merge $1
git push
git checkout $1
Respuesta1
Agregue set -e
después de la línea shebang para que el script salga si alguno de los comandos falla:
#!/bin/bash
set -e
git checkout $1
nosetests
De help set
:
-e Salir inmediatamente si un comando sale con un estado distinto de cero.
Respuesta2
Podrías intentar lo siguiente.
#!/bin/bash
git checkout $1
nosetests || exit 1
git checkout master
git merge $1
git push
git checkout $1
Verificará ||
el código de retorno nosetests
y ejecutará el comando exit 1
si no es cero.
Otra variante podría ser.
#!/bin/bash
git checkout $1
if ! nosetests
then
exit 1
fi
git checkout master
git merge $1
git push
git checkout $1