diff options
Diffstat (limited to 'buildroot/share/git/mfrb')
-rw-r--r-- | buildroot/share/git/mfrb | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/buildroot/share/git/mfrb b/buildroot/share/git/mfrb new file mode 100644 index 0000000..071b0b3 --- /dev/null +++ b/buildroot/share/git/mfrb @@ -0,0 +1,27 @@ +#!/usr/bin/env bash +# +# mfrb +# +# Do "git rebase -i" against the "target" branch (bugfix-1.1.x, bugfix-2.0.x, dev-2.1.x, or master) +# + +MFINFO=$(mfinfo "$@") || exit 1 +IFS=' ' read -a INFO <<< "$MFINFO" +TARG=${INFO[3]} +CURR=${INFO[5]} + +IND=6 +while [ $IND -lt ${#INFO[@]} ]; do + ARG=${INFO[$IND]} + case "$ARG" in + -q|--quick ) QUICK=1 ;; + -h|--help ) USAGE=1 ;; + * ) USAGE=1 ; echo "unknown option: $ARG" ;; + esac + let IND+=1 +done + +[[ $USAGE == 1 ]] && { echo "usage: `basename $0` [1|2|3]" 1>&2 ; exit 1 ; } + +[[ $QUICK ]] || git fetch upstream +git rebase upstream/$TARG && git rebase -i upstream/$TARG |