You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

41 lines
844 B
Plaintext

#!/usr/bin/env bash
#
# mfqp [-q|--quick] [1|2|3]
#
# Add all changed files, commit as "patch", do `mfrb` and `git push -f`
#
MFINFO=$(mfinfo "$@") || exit 1
IFS=' ' read -a INFO <<< "$MFINFO"
REPO=${INFO[2]}
TARG=${INFO[3]}
CURR=${INFO[5]}
IND=6
while [ $IND -lt ${#INFO[@]} ]; do
ARG=${INFO[$IND]}
case "$ARG" in
-q|--quick ) QUICK="-q" ;;
-h|--help ) USAGE=1 ;;
* ) USAGE=1 ; echo "unknown option: $ARG" ;;
esac
let IND+=1
done
[[ ${INFO[4]} =~ [0-9] ]] && USAGE=1
[[ $USAGE == 1 ]] && { echo "usage: `basename $0` [-hq] [1|2|3]" 1>&2 ; exit 1 ; }
git add .
git commit -m "patch"
if [[ $CURR == $TARG ]]; then
if [[ $REPO == "MarlinDocumentation" ]]; then
git rebase -i HEAD~2 && git push -f
else
echo "Don't alter the PR Target branch."; exit 1
fi
else
mfrb $QUICK "$@" && git push -f
fi