git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[PATCH] git-pull.sh: better warning message for "git pull" on detached head.

From
Matthieu Moy <matthieu.moy@imag.fr>
Date
Apr 6, 2009, 21:14 UTC
Message-ID
<1239052487-6936-1-git-send-email-Matthieu.Moy@imag.fr>

Otherwise, git complains about not finding a branch to pull from in 'branch..merge', which is hardly understandable.

Signed-off-by: Matthieu Moy <Matthieu.Moy@imag.fr>
---
 git-pull.sh |   43 ++++++++++++++++++++++++++-----------------
 1 files changed, 26 insertions(+), 17 deletions(-)
diff --git a/git-pull.sh b/git-pull.sh
index 8a26763..ab29a9e 100755
--- a/git-pull.sh
+++ b/git-pull.sh
@@ -90,23 +90,32 @@ error_on_no_merge_candidates () {
 
 	curr_branch=${curr_branch#refs/heads/}
 
-	echo "You asked me to pull without telling me which branch you"
-	echo "want to merge with, and 'branch.${curr_branch}.merge' in"
-	echo "your configuration file does not tell me either.  Please"
-	echo "name which branch you want to merge on the command line and"
-	echo "try again (e.g. 'git pull <repository> <refspec>')."
-	echo "See git-pull(1) for details on the refspec."
-	echo
-	echo "If you often merge with the same branch, you may want to"
-	echo "configure the following variables in your configuration"
-	echo "file:"
-	echo
-	echo "    branch.${curr_branch}.remote = <nickname>"
-	echo "    branch.${curr_branch}.merge = <remote-ref>"
-	echo "    remote.<nickname>.url = <url>"
-	echo "    remote.<nickname>.fetch = <refspec>"
-	echo
-	echo "See git-config(1) for details."
+	if [ -z "$curr_branch" ]; then
+		echo "You asked me to pull without telling me which branch you want"
+		echo "to merge with, and you are on a detached HEAD, so I cannot"
+		echo "know from 'branch.<branchname>.merge' in your configuration"
+		echo "file.  Please name which branch you want to merge on the command"
+		echo "line and try again (e.g. 'git pull <repository> <refspec>')."
+		echo "See git-pull(1) for details on the refspec."
+	else
+		echo "You asked me to pull without telling me which branch you"
+		echo "want to merge with, and 'branch.${curr_branch}.merge' in"
+		echo "your configuration file does not tell me either.	Please"
+		echo "name which branch you want to merge on the command line and"
+		echo "try again (e.g. 'git pull <repository> <refspec>')."
+		echo "See git-pull(1) for details on the refspec."
+		echo
+		echo "If you often merge with the same branch, you may want to"
+		echo "configure the following variables in your configuration"
+		echo "file:"
+		echo
+		echo "    branch.${curr_branch}.remote = <nickname>"
+		echo "    branch.${curr_branch}.merge = <remote-ref>"
+		echo "    remote.<nickname>.url = <url>"
+		echo "    remote.<nickname>.fetch = <refspec>"
+		echo
+		echo "See git-config(1) for details."
+	fi
 	exit 1
 }
 
-- 
1.6.2.2.449.g92961.dirty
Next: Mike Ralphson
Message 1 of 7 in “git-pull.sh: better warning message for "git pull" on detached head.”
  1. git-pull.sh: better warning message for "git pull" on detached head.Matthieu Moy, Apr 6, 2009
  2. Mike RalphsonApr 7, 2009
  3. git-pull.sh: better warning message for "git pull" on detached head.Matthieu Moy, Apr 7, 2009
  4. Finn Arne GangstadApr 7, 2009
  5. Matthieu MoyApr 7, 2009
  6. Junio C HamanoApr 8, 2009
  7. git-pull.sh: better warning message for "git pull" on detached head.Matthieu Moy, Apr 8, 2009

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.