summaryrefslogtreecommitdiff
path: root/git-parse-remote.sh
diff options
context:
space:
mode:
authorJunio C Hamano <gitster@pobox.com>2011-04-28 21:11:39 (GMT)
committerJunio C Hamano <gitster@pobox.com>2011-04-28 21:11:39 (GMT)
commit78c6e0f3fa41d697f2e01850b0a361e21095545d (patch)
tree672214a8fa5dfc78e80fae82e856c9f8f2f013f6 /git-parse-remote.sh
parentac9666f84a597973ef29dc7f0f7edcb3e1a3aa45 (diff)
parent45e2acf3d33b2bc635f14af0c1d9ce698328954f (diff)
downloadgit-78c6e0f3fa41d697f2e01850b0a361e21095545d.zip
git-78c6e0f3fa41d697f2e01850b0a361e21095545d.tar.gz
git-78c6e0f3fa41d697f2e01850b0a361e21095545d.tar.bz2
Merge branch 'mz/rebase'
* mz/rebase: (34 commits) rebase: define options in OPTIONS_SPEC Makefile: do not install sourced rebase scripts rebase: use @{upstream} if no upstream specified rebase -i: remove unnecessary state rebase-root rebase -i: don't read unused variable preserve_merges git-rebase--am: remove unnecessary --3way option rebase -m: don't print exit code 2 when merge fails rebase -m: remember allow_rerere_autoupdate option rebase: remember strategy and strategy options rebase: remember verbose option rebase: extract code for writing basic state rebase: factor out sub command handling rebase: make -v a tiny bit more verbose rebase -i: align variable names rebase: show consistent conflict resolution hint rebase: extract am code to new source file rebase: extract merge code to new source file rebase: remove $branch as synonym for $orig_head rebase -i: support --stat rebase: factor out call to pre-rebase hook ...
Diffstat (limited to 'git-parse-remote.sh')
-rw-r--r--git-parse-remote.sh38
1 files changed, 38 insertions, 0 deletions
diff --git a/git-parse-remote.sh b/git-parse-remote.sh
index ea093d2..b24119d 100644
--- a/git-parse-remote.sh
+++ b/git-parse-remote.sh
@@ -50,3 +50,41 @@ get_remote_merge_branch () {
esac
esac
}
+
+error_on_missing_default_upstream () {
+ cmd="$1"
+ op_type="$2"
+ op_prep="$3"
+ example="$4"
+ branch_name=$(git symbolic-ref -q HEAD)
+ if test -z "$branch_name"
+ then
+ echo "You are not currently on a branch, so I cannot use any
+'branch.<branchname>.merge' in your configuration file.
+Please specify which branch you want to $op_type $op_prep on the command
+line and try again (e.g. '$example').
+See git-${cmd}(1) for details."
+ else
+ echo "You asked me to $cmd without telling me which branch you
+want to $op_type $op_prep, and 'branch.${branch_name#refs/heads/}.merge' in
+your configuration file does not tell me, either. Please
+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
+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."
+ fi
+ exit 1
+}