HBASE-14871 Allow specifying the base branch for make_patch

This commit is contained in:
Elliott Clark 2015-11-23 16:48:45 -08:00
parent 4a60c25c70
commit 4cc341b9c2
1 changed files with 22 additions and 13 deletions

View File

@ -20,18 +20,22 @@
# Make a patch for the current branch based on its tracking branch
# Process args
while getopts "ahd:" opt; do
while getopts "ahd:b:" opt; do
case "$opt" in
a) addendum='-addendum'
;;
d)
patch_dir=$OPTARG
;;
b)
tracking_branch=$OPTARG
;;
*)
echo -e "Usage: $0 [-h] [-a] [-d] <directory> \n\
Must be run from within the git branch to make the patch against.\n\
-h - display these instructions.\n\
-a - Add an 'addendum' prefix to the patch name.\n\
-b - Specify the base branch to diff from. (defaults to the tracking branch or origin master)\n\
-d - specify a patch directory (defaults to ~/patches/)"
exit 0
;;
@ -53,7 +57,10 @@ if [ "$git_dirty" -ne 0 ]; then
exit 1
fi
# Determine the tracking branch
# Determine the tracking branch if needed.
# If it was passed in from the command line
# with -b then use dthat no matter what.
if [ ! "$tracking_branch" ]; then
git log -n 1 origin/$branch > /dev/null 2>&1
status=$?
if [ "$status" -eq 128 ]; then
@ -66,6 +73,8 @@ else
echo "Unknown error: $?" >&2
exit 1
fi
fi
# Deal with invalid or missing $patch_dir
if [ ! "$patch_dir" ]; then