@leroysheep / BookAlchemy / commits / f93a65c601

Meta/pushall: iterate and retry

Junio C Hamano committed Dec 20, 2013 at 15:01 UTC f93a65c60140ccf96f550dd60fafdfa1ba1d8ca9
1 file changed +19 -4
pushall
+19 -4
index e46ddf6086..d262e9f823 100755 --- a/pushall +++ b/pushall @@ -1,10 +1,25 @@ #!/bin/sh -# for remote in ko repo gph github2 sfjp sf.net -for remote in ko repo gph github2 sfjp sf.net +sites='ko repo github2 sfjp sf.net gph ' + +while : do - printf "%s: " "$remote" - git push --follow-tags "$remote" "$@" || exit $? + failed= + for remote in $sites + do + printf "%s: " "$remote" + git push --follow-tags "$remote" "$@" || failed="$failed$remote " + done + + if test -z "$failed" + then + break + elif test "x$sites" = "x$failed" + then + echo >&2 "Failed to push to: $sites" + exit 1 + fi + sites="$failed" done case "$#,$*" in