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@xxxxxxx> --- 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 -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html