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

Re: Unhelpful "branch.master.remote = <nickname>" advice?

From
JNJan Nieuwenhuizen <janneke-list@xs4all.nl>
Date
Nov 12, 2009, 14:17 UTC
Message-ID
<1258035449.26362.273.camel@heerbeest>
In-Reply-To
<AC99BA30-A36D-4798-8E7D-9D69EFE99D55@dbservice.com>

Op woensdag 11-11-2009 om 21:32 uur [tijdzone +0100], schreef Tomas Carnecky:

Hi Tomas,
> It didn't tell you to copy'n'paste the whole lines to a git-config(1)  
> commandline. But I do see that the output can be confusing for someone  
> not familiar with the git configuration files/git-config.
Once I get this to work, I'll send a patch for it.
> I don't know the relationship between you and eddy, but usually you  
> shouldn't rebase (=rewrite) eddies commits. That also means you'd have  
> to live with the merge commits.
Hmm, okay.
> I see your mistake. Both the origin and eddy remote write to the same  
> namespace (refs/remotes/origin/*), and that's also why you get (force  
> update) below
Ah, that makes sense.
> . Change the fetch line of remote.eddy.fetch to +refs/heads/*:refs/ 
> remotes/eddy/*. After that both command (pull -r / pull -r eddy)  
> should work (I hope).
Okay, so now I have
    [branch "master"]
	    remote = origin
	    merge = refs/heads/master
    [remote "origin"]
	    url = git@github.com:janneke/gub.git
	    fetch = +refs/heads/*:refs/remotes/origin/*
    # advise from git pull, using <nickname> = eddy
    #        branch.master.remote = <nickname>
    #        branch.master.merge = <remote-ref>
    #        remote.<nickname>.url = <url>
    #        remote.<nickname>.fetch = <refspec>
    #[branch "master"]
    #	remote = eddy
    #	merge = refs/heads/master
    [remote "eddy"]
	    url = http://github.com/epronk/gub.git
    #use remote.eddy.fetch to +refs/heads/*:refs/remotes/eddy/*.
	    fetch = +refs/heads/*:refs/remotes/eddy/*
It looked promising, but still get
    15:00:20 janneke@peder:~/vc/gub
    $ git pull -r --verbose
    From git@github.com:janneke/gub
     = [up to date]      lilypond-release-branch -> origin/lilypond-release-branch
     = [up to date]      master     -> origin/master
    Current branch master is up to date.
    15:00:26 janneke@peder:~/vc/gub
    $ git pull -r --verbose eddy
    From http://github.com/epronk/gub
     = [up to date]      lilypond-release-branch -> eddy/lilypond-release-branch
     = [up to date]      master     -> eddy/master
    You asked me to pull without telling me which branch you
    want to merge with, and 'branch.master.merge' in
    your configuration file does not tell me either.	Please
    specify which branch you want to merge on the command line and
    try again (e.g. 'git pull <repository> <refspec>').
    See git-pull(1) for details.
    If you often merge with the same branch, you may want to
    configure the following variables in your configuration
    file:
	branch.master.remote = <nickname>
	branch.master.merge = <remote-ref>
	remote.<nickname>.url = <url>
	remote.<nickname>.fetch = <refspec>
    See git-config(1) for details.
    [1]15:00:33 janneke@peder:~/vc/gub
    $ 

After this I started to re-read git-config's man page again. There is something strange that I do not understand

    branch.<name>.merge
        Defines, together with branch.<name>.remote, the upstream
        branch for the given branch.  It tells git-fetch/git-pull
        which branch to merge and can also affect git-push (see
        push.default).
this seems to imply that the merge variable here
   [branch "master"]
       remote = FOOBAR
       merge = refs/heads/master

is somehow tied to the remote nick FOOBAR. That would mean it is actually taken as

     branch.<name>.<nickname>.merge

and also that it's impossible to specify more than one <nickname>. That would be make nicknames unusable and thus silly, so I cannot be right?

Thanks a lot for your continued support!

Greetings, Jan.

-- 
Jan Nieuwenhuizen <janneke@gnu.org> | GNU LilyPond - The music typesetter
Avatar®: http://AvatarAcademy.nl    | http://lilypond.org
Previous: Tomas CarneckyNext: Jan Krüger
Message 10 of 26 in “Unhelpful "branch.master.remote = <nickname>" advice?”
  1. Jan NieuwenhuizenNov 11, 2009
  2. Tomas CarneckyNov 11, 2009
  3. Makefile: add uninstall target. Fixes elementary good cleaning manners.Jan Nieuwenhuizen, Nov 18, 2009
  4. Matthieu MoyNov 18, 2009
  5. Jan KrügerNov 11, 2009
  6. Junio C HamanoNov 11, 2009
  7. Tomas CarneckyNov 11, 2009
  8. Jan NieuwenhuizenNov 11, 2009
  9. Tomas CarneckyNov 11, 2009
  10. Jan NieuwenhuizenNov 12, 2009
  11. git-pull.sh: overhaul error handling when no candidates are foundJan Krüger, Nov 12, 2009
  12. Jeff KingNov 12, 2009
  13. Jan KrügerNov 12, 2009
  14. Jeff KingNov 12, 2009
  15. git-pull.sh --rebase: overhaul error handling when no candidates are foundJan Krüger, Nov 12, 2009
  16. Jonathan NiederNov 13, 2009
  17. pull: clarify advice for the unconfigured error caseJonathan Nieder, Nov 27, 2009
  18. Junio C HamanoDec 2, 2009
  19. Jonathan NiederDec 3, 2009
  20. Jeff KingDec 3, 2009
  21. Jan NieuwenhuizenDec 3, 2009
  22. Jan KrügerDec 3, 2009
  23. Junio C HamanoDec 7, 2009
  24. Junio C HamanoNov 15, 2009
  25. Björn SteinbrinkNov 12, 2009
  26. Tomas CarneckyNov 12, 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.