Code

Make git-pull complain and give advice when there is nothing to merge with
authorFederico Mena Quintero <federico@novell.com>
Tue, 2 Oct 2007 23:36:30 +0000 (18:36 -0500)
committerJunio C Hamano <gitster@pobox.com>
Wed, 3 Oct 2007 00:27:48 +0000 (17:27 -0700)
Signed-off-by: Federico Mena Quintero <federico@gnu.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
git-pull.sh

index c3f05f56de300ad48d940def184698fb37c40028..74bfc16744d69d8394f89b6f77d81697a8336032 100755 (executable)
@@ -97,10 +97,24 @@ case "$merge_head" in
        esac
        curr_branch=${curr_branch#refs/heads/}
 
-       echo >&2 "Warning: No merge candidate found because value of config option
-         \"branch.${curr_branch}.merge\" does not match any remote branch fetched."
-       echo >&2 "No changes."
-       exit 0
+       echo >&2 "You asked me to pull without telling me which branch you"
+       echo >&2 "want to merge with, and 'branch.${curr_branch}.merge' in"
+       echo >&2 "your configuration file does not tell me either.  Please"
+       echo >&2 "name which branch you want to merge on the command line and"
+       echo >&2 "try again (e.g. 'git pull <repository> <refspec>')."
+       echo >&2 "See git-pull(1) for details on the refspec."
+       echo >&2
+       echo >&2 "If you often merge with the same branch, you may want to"
+       echo >&2 "configure the following variables in your configuration"
+       echo >&2 "file:"
+       echo >&2
+       echo >&2 "    branch.${curr_branch}.remote = <nickname>"
+       echo >&2 "    branch.${curr_branch}.merge = <remote-ref>"
+       echo >&2 "    remote.<nickname>.url = <url>"
+       echo >&2 "    remote.<nickname>.fetch = <refspec>"
+       echo >&2
+       echo >&2 "See git-config(1) for details."
+       exit 1
        ;;
 ?*' '?*)
        if test -z "$orig_head"