28 lines
		
	
	
		
			623 B
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			28 lines
		
	
	
		
			623 B
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
#!/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
 |