Instead, we complain to the user and suggest that they explicitly
specify the remote and branch. We depend on the exit status of
git-symbolic-ref, so let's go ahead and document that.
Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <junkio@cox.net>
advertised (horrors). Therefore symbolic links are now deprecated
and symbolic refs are used by default.
+git-symbolic-ref will exit with status 0 if the contents of the
+symbolic ref were printed correctly, with status 1 if the requested
+name is not a symbolic ref, or 128 if another error occurs.
+
Author
------
Written by Junio C Hamano <junkio@cox.net>
case "$merge_head" in
'')
- curr_branch=$(git-symbolic-ref HEAD | \
- sed -e 's|^refs/heads/||')
+ curr_branch=$(git-symbolic-ref -q HEAD)
+ case $? in
+ 0) ;;
+ 1) echo >&2 "You are not currently on a branch; you must explicitly"
+ echo >&2 "specify which branch you wish to merge:"
+ echo >&2 " git pull <remote> <branch>"
+ exit 1;;
+ *) exit $?;;
+ 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."