2016-04-18 23:18:35 -05:00
|
|
|
#!/usr/bin/env bash
|
|
|
|
#
|
|
|
|
# mfnew
|
|
|
|
#
|
2017-04-20 21:24:43 -05:00
|
|
|
# Create a new branch from the default target with the given name
|
2016-04-18 23:18:35 -05:00
|
|
|
#
|
|
|
|
|
2017-11-04 17:33:00 -05:00
|
|
|
usage() {
|
2020-01-05 01:24:28 -06:00
|
|
|
echo "usage: `basename $0` [1|2|3] [name]" 1>&2
|
2017-11-04 17:33:00 -05:00
|
|
|
}
|
2017-07-02 20:43:57 -05:00
|
|
|
|
2018-03-01 20:41:01 -06:00
|
|
|
[[ $# < 3 && $1 != "-h" && $1 != "--help" ]] || { usage; exit 1; }
|
2017-11-04 17:33:00 -05:00
|
|
|
|
|
|
|
MFINFO=$(mfinfo "$@") || exit 1
|
2016-04-18 23:18:35 -05:00
|
|
|
IFS=' ' read -a INFO <<< "$MFINFO"
|
|
|
|
TARG=${INFO[3]}
|
2017-11-04 17:33:00 -05:00
|
|
|
BRANCH=pr_for_$TARG-$(date +"%G-%m-%d_%H.%M.%S")
|
2016-04-18 23:18:35 -05:00
|
|
|
|
2017-11-04 17:33:00 -05:00
|
|
|
# BRANCH can be given as the last argument
|
2016-04-18 23:18:35 -05:00
|
|
|
case "$#" in
|
2017-11-04 17:33:00 -05:00
|
|
|
1 ) case "$1" in
|
2020-01-05 01:24:28 -06:00
|
|
|
1|2|3) ;;
|
2017-11-04 17:33:00 -05:00
|
|
|
*) BRANCH=$1 ;;
|
|
|
|
esac
|
|
|
|
;;
|
|
|
|
2 ) case "$1" in
|
2020-01-05 01:24:28 -06:00
|
|
|
1|2|3) BRANCH=$2 ;;
|
2017-11-04 17:33:00 -05:00
|
|
|
*) usage ; exit 1 ;;
|
|
|
|
esac
|
|
|
|
;;
|
2016-04-18 23:18:35 -05:00
|
|
|
esac
|
|
|
|
|
2017-05-05 00:46:39 -05:00
|
|
|
git fetch upstream
|
2018-04-08 06:52:29 -05:00
|
|
|
git checkout --no-track upstream/$TARG -b $BRANCH
|