Подтвердить что ты не робот

Как обнаружить, что клон git завершился с ошибкой в ​​bash script

Как узнать, была ли ошибка git clone в bash script?

git clone [email protected]:my-username/my-repo.git

Если произошла ошибка, я хочу просто exit 1;

4b9b3361

Ответ 1

Вот некоторые общие формы. Выбор лучшего зависит от того, что вы делаете. Вы можете использовать любое подмножество или комбинацию из них в одном script без плохого стиля.


if ! failingcommand
then
    echo >&2 message
    exit 1
fi

failingcommand
ret=$?
if ! test "$ret" -eq 0
then
    echo >&2 "command failed with exit status $ret"
    exit 1
fi

failingcommand || exit "$?"

failingcommand || { echo >&2 "failed with $?"; exit 1; }

Ответ 2

Вы можете сделать что-то вроде:

git clone [email protected]:my-username/my-repo.git || exit 1

Или выполните его:

exec git clone [email protected]:my-username/my-repo.git

Последний позволит обработать процесс оболочки операцией clone, и если она не удалась, верните ошибку. Вы можете узнать больше о exec здесь.

Ответ 3

Метод 1:

git clone [email protected]:my-username/my-repo.git || exit 1

Метод 2:

if ! (git clone [email protected]:my-username/my-repo.git) then
    exit 1
    # Put Failure actions here...
else
    echo "Success"
    # Put Success actions here...
fi