Merge branch 'cn/pull-rebase-message'
By Carlos Martín Nieto * cn/pull-rebase-message: Make git-{pull,rebase} message without tracking information friendlier
This commit is contained in:
commit
4b4ec3fc64
@ -57,34 +57,31 @@ error_on_missing_default_upstream () {
|
|||||||
op_prep="$3"
|
op_prep="$3"
|
||||||
example="$4"
|
example="$4"
|
||||||
branch_name=$(git symbolic-ref -q HEAD)
|
branch_name=$(git symbolic-ref -q HEAD)
|
||||||
|
# If there's only one remote, use that in the suggestion
|
||||||
|
remote="<remote>"
|
||||||
|
if test $(git remote | wc -l) = 1
|
||||||
|
then
|
||||||
|
remote=$(git remote)
|
||||||
|
fi
|
||||||
|
|
||||||
if test -z "$branch_name"
|
if test -z "$branch_name"
|
||||||
then
|
then
|
||||||
echo "You are not currently on a branch, so I cannot use any
|
echo "You are not currently on a branch. Please specify which
|
||||||
'branch.<branchname>.merge' in your configuration file.
|
branch you want to $op_type $op_prep. See git-${cmd}(1) for details.
|
||||||
Please specify which branch you want to $op_type $op_prep on the command
|
|
||||||
line and try again (e.g. '$example').
|
$example
|
||||||
See git-${cmd}(1) for details."
|
"
|
||||||
else
|
else
|
||||||
echo "You asked me to $cmd without telling me which branch you
|
echo "There is no tracking information for the current branch.
|
||||||
want to $op_type $op_prep, and 'branch.${branch_name#refs/heads/}.merge' in
|
Please specify which branch you want to $op_type $op_prep.
|
||||||
your configuration file does not tell me, either. Please
|
See git-${cmd}(1) for details
|
||||||
specify which branch you want to use on the command line and
|
|
||||||
try again (e.g. '$example').
|
|
||||||
See git-${cmd}(1) for details.
|
|
||||||
|
|
||||||
If you often $op_type $op_prep the same branch, you may want to
|
$example
|
||||||
use something like the following in your configuration file:
|
|
||||||
[branch \"${branch_name#refs/heads/}\"]
|
|
||||||
remote = <nickname>
|
|
||||||
merge = <remote-ref>"
|
|
||||||
test rebase = "$op_type" &&
|
|
||||||
echo " rebase = true"
|
|
||||||
echo "
|
|
||||||
[remote \"<nickname>\"]
|
|
||||||
url = <url>
|
|
||||||
fetch = <refspec>
|
|
||||||
|
|
||||||
See git-config(1) for details."
|
If you wish to set tracking information for this branch you can do so with:
|
||||||
|
|
||||||
|
git branch --set-upstream ${branch_name#refs/heads/} $remote/<branch>
|
||||||
|
"
|
||||||
fi
|
fi
|
||||||
exit 1
|
exit 1
|
||||||
}
|
}
|
||||||
|
@ -180,7 +180,7 @@ error_on_no_merge_candidates () {
|
|||||||
elif [ -z "$curr_branch" -o -z "$upstream" ]; then
|
elif [ -z "$curr_branch" -o -z "$upstream" ]; then
|
||||||
. git-parse-remote
|
. git-parse-remote
|
||||||
error_on_missing_default_upstream "pull" $op_type $op_prep \
|
error_on_missing_default_upstream "pull" $op_type $op_prep \
|
||||||
"git pull <repository> <refspec>"
|
"git pull <remote> <branch>"
|
||||||
else
|
else
|
||||||
echo "Your configuration specifies to $op_type $op_prep the ref '${upstream#refs/heads/}'"
|
echo "Your configuration specifies to $op_type $op_prep the ref '${upstream#refs/heads/}'"
|
||||||
echo "from the remote, but no such ref was fetched."
|
echo "from the remote, but no such ref was fetched."
|
||||||
|
@ -380,7 +380,7 @@ then
|
|||||||
then
|
then
|
||||||
. git-parse-remote
|
. git-parse-remote
|
||||||
error_on_missing_default_upstream "rebase" "rebase" \
|
error_on_missing_default_upstream "rebase" "rebase" \
|
||||||
"against" "git rebase <upstream branch>"
|
"against" "git rebase <branch>"
|
||||||
fi
|
fi
|
||||||
;;
|
;;
|
||||||
*) upstream_name="$1"
|
*) upstream_name="$1"
|
||||||
|
@ -160,14 +160,12 @@ rm -f B
|
|||||||
|
|
||||||
test_expect_success 'fail when upstream arg is missing and not on branch' '
|
test_expect_success 'fail when upstream arg is missing and not on branch' '
|
||||||
git checkout topic &&
|
git checkout topic &&
|
||||||
test_must_fail git rebase >output.out &&
|
test_must_fail git rebase
|
||||||
grep "You are not currently on a branch" output.out
|
|
||||||
'
|
'
|
||||||
|
|
||||||
test_expect_success 'fail when upstream arg is missing and not configured' '
|
test_expect_success 'fail when upstream arg is missing and not configured' '
|
||||||
git checkout -b no-config topic &&
|
git checkout -b no-config topic &&
|
||||||
test_must_fail git rebase >output.out &&
|
test_must_fail git rebase
|
||||||
grep "branch.no-config.merge" output.out
|
|
||||||
'
|
'
|
||||||
|
|
||||||
test_expect_success 'default to @{upstream} when upstream arg is missing' '
|
test_expect_success 'default to @{upstream} when upstream arg is missing' '
|
||||||
|
Loading…
Reference in New Issue
Block a user