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

Re: git pull and merging.

From
Jakub Narebski <jnareb@gmail.com>
Date
Dec 8, 2006, 11:48 UTC
Message-ID
<elbj9g$og4$1@sea.gmane.org>
In-Reply-To
<200612071227.46194.Josef.Weidendorfer@gmx.de>
Josef Weidendorfer wrote:
Show 16 quoted lines
> Now looking at it, I think this semantic really is screwed and utterly confusing.
> Why decides branch.*.merge about actions done in fetch (I think even if you did
> "git fetch" alone)? OK, actually, that is an implementation detail and not
> really important.
> 
> More important: Because "branch.*.merge" specifies a _remote_ branch,
> the user has to understand that this info is already used in the fetch.
> The intuitive mental model of a user about how it works IMHO is that
> "branch.*.merge" is checked in the merge phase (as the name of the option suggests).
> But this way, how could the merge phase know about any remote branch at all,
> which does not need to be touched at all in the merge phase?
> 
> IMHO we should somehow change the semantic of branch.*.merge to specify the _local_
> refspec part, as this is the branch which actually gets merged.
> This is the only way that a user could grasp the meaning of it.
> Perhaps introduce "branch.*.defaultmerge", and obsoleting "branch.*.merge"?

The change of semantic would prohibit the "pull without tracking branch" semantic (probably not used anymore, since git supports multiple heads from long time).

I proposed in another thread to allow to either specify full refspec (in addition to current specifying remote branch), or ':' and local branch. Or perhaps add branch.*.localmerge configuration option?

-- 
Jakub Narebski
Warsaw, Poland
ShadeHawk on #git
Previous: Santi BéjarNext: Jakub Narebski
Message 33 of 36 in “git pull and merging.”
  1. Aneesh KumarDec 6, 2006
  2. Junio C HamanoDec 6, 2006
  3. Aneesh KumarDec 6, 2006
  4. Johannes SchindelinDec 6, 2006
  5. Peter BaumannDec 6, 2006
  6. Johannes SchindelinDec 6, 2006
  7. Peter BaumannDec 6, 2006
  8. Aneesh KumarDec 6, 2006
  9. Jakub NarebskiDec 6, 2006
  10. Josef WeidendorferDec 6, 2006
  11. Aneesh Kumar K.VDec 7, 2006
  12. Josef WeidendorferDec 7, 2006
  13. Junio C HamanoDec 7, 2006
  14. Josef WeidendorferDec 7, 2006
  15. Santi BéjarDec 8, 2006
  16. Josef WeidendorferDec 8, 2006
  17. Add branch.*.localmerge and documentation updateJosef Weidendorfer, Dec 8, 2006
  18. Santi BéjarDec 8, 2006
  19. Junio C HamanoDec 8, 2006
  20. Jakub NarebskiDec 8, 2006
  21. Josef WeidendorferDec 8, 2006
  22. Junio C HamanoDec 8, 2006
  23. Josef WeidendorferDec 8, 2006
  24. Junio C HamanoDec 8, 2006
  25. Add branch.*.merge warning and documentation updateJosef Weidendorfer, Dec 9, 2006
  26. Santi BéjarDec 9, 2006
  27. Josef WeidendorferDec 8, 2006
  28. Santi BéjarDec 8, 2006
  29. Santi BéjarDec 8, 2006
  30. Junio C HamanoDec 8, 2006
  31. Junio C HamanoDec 7, 2006
  32. Santi BéjarDec 8, 2006
  33. Jakub NarebskiDec 8, 2006
  34. Jakub NarebskiDec 6, 2006
  35. Johannes SchindelinDec 6, 2006
  36. Fwd: git pull and merging.Aneesh Kumar, Dec 6, 2006

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.