Re: [PATCH 4/4] Make git-pull give hints on what to do when there is no branch to merge from

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Federico Mena Quintero <federico@xxxxxxxxxx> writes:

> Signed-off-by: Federico Mena Quintero <federico@xxxxxxx>
> ---
>  git-pull.sh |    6 +++++-
>  1 files changed, 5 insertions(+), 1 deletions(-)
>
> diff --git a/git-pull.sh b/git-pull.sh
> index 5e96d1f..7beef4d 100755
> --- a/git-pull.sh
> +++ b/git-pull.sh
> @@ -98,7 +98,11 @@ case "$merge_head" in
>  	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."
> +         \"branch.${curr_branch}.merge\" does not match any remote branch fetched.
> +         This branch is not set up to track any other branches.  Please name which
> +         branch you want to merge from on the command line, or if you almost always
> +         want to merge from the same branch, then set this up with
> +         \"git branch --track\"."

This is a nice attempt, but can you use "git branch --track" to
set this?  What does the command line look like?

This error can come when branch.<foo>.merge does not match what
remote.<bar>.fetch says (where branch.<foo>.remote is <bar>),
but it is my understanding that the builtin-fetch work by Daniel
and Shawn would fetch branch.<foo>.merge as well to reduce this
error.  Another possibility is when the user does not have any
branch.<foo>.merge.

I am inclined to suggest rewording the message like this, and
make this condition an error (i.e. "exit 1"):

    You asked me to pull without telling me which branch you
    want to merge with, and 'branch.${curr_branch}.merge' in
    your configuration file does not tell me either.  Please
    name which branch you want to merge on the command line and
    try again.

    If you often merge with the same branch, you may want to
    configure the following variables in your configuration
    file:

	branch.${curr_branch}.remote = <nickname>
	branch.${curr_branch}.merge = <remote-ref>
        remote.<nickname>.url = <url>
        remote.<nickname>.fetch = <refspec>

    See git-config(1) for details.
-
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

[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]

  Powered by Linux