From 344b145062538be2ee109d4145cdc2bea48409f8 Mon Sep 17 00:00:00 2001 From: spacewander Date: Sun, 19 Mar 2017 01:07:00 +0800 Subject: [PATCH] git-pull-request: use detected upstream remote --- bin/git-pull-request | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/bin/git-pull-request b/bin/git-pull-request index 9872880..a011314 100755 --- a/bin/git-pull-request +++ b/bin/git-pull-request @@ -41,16 +41,22 @@ test -z "$user" && abort "git config user.email required" # branch branch=${1-$(git symbolic-ref HEAD | sed 's/refs\/heads\///')} +remote=$(git config branch."$branch".remote) +if [ -z "$remote" ]; then + echo 'no upstream found, push to origin as default' + remote="origin" +fi +[ "$remote" == "." ] && abort "the upstream should be a remote branch." # make sure it's pushed -git push origin "$branch" || abort "failed to push $branch" +git push "$remote" "$branch" || abort "failed to push $branch" -origin=$(git config remote.origin.url) -if [[ $origin == git@* ]]; then - project=${origin##*:} +remote_url=$(git config remote."$remote".url) +if [[ "$remote_url" == git@* ]]; then + project=${remote_url##*:} else - project=${origin#https://*/} + project=${remote_url#https://*/} fi project=${project%.git}