Para executar o comando uma vez, mas pausar por falha:
if ! git rebase "$base"; then
read -p "Press ENTER when you think you've fixed it"
fi
Eu tenho isso em um script:
set -e;
base="remotes/origin/dev";
git checkout --no-track -b "$new_branch";
git rebase "$base";
de vez em quando, há conflitos, é claro, e o que acontece é que o rebase do git termina com 1, e assim o script aborta / sai antes.
Portanto, meu script automatizado não funciona se houver conflitos, o que é freqüente o suficiente para impedir o objetivo.
A minha pergunta é, existe alguma maneira de suspender o script em um código de saída diferente de zero e, em seguida, retomar o script após um sinal ou algo assim? Algo parecido com isto:
git rebase "$base" || suspend --until x;
então em algum outro terminal eu consigo resolver coisas e quando termino no terminal atual eu posso continuar? Algo assim?
Tags bash git shell return-status