aboutsummaryrefslogtreecommitdiff
path: root/scripts/git/git-push-all.sh
diff options
context:
space:
mode:
Diffstat (limited to 'scripts/git/git-push-all.sh')
-rwxr-xr-xscripts/git/git-push-all.sh10
1 files changed, 7 insertions, 3 deletions
diff --git a/scripts/git/git-push-all.sh b/scripts/git/git-push-all.sh
index 7e67f4c96d..1b20a50b7f 100755
--- a/scripts/git/git-push-all.sh
+++ b/scripts/git/git-push-all.sh
@@ -29,6 +29,8 @@ function usage()
echo " CI environment failures, using code that previously passed CI."
echo " (default: skip; current: $CURRENT_PUSH_SAME matching branches)"
echo " --: pass further arguments to git push."
+ echo " All unrecognised arguments are passed to git push, but complex"
+ echo " arguments before -- may be mangled by getopt."
echo " (default: git push --atomic, current: $GIT_PUSH)"
echo
echo " env vars:"
@@ -127,9 +129,11 @@ while getopts ":hr:st:" opt; do
OPTIND=$((OPTIND - 2))
;;
*)
- # Assume we're done with script arguments,
- # and git push will handle the option
- break
+ # Make git push handle the option
+ # This might mangle options with spaces, use -- for complex options
+ GIT_PUSH="$GIT_PUSH $1"
+ shift
+ OPTIND=$((OPTIND - 1))
;;
esac
done