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

Re: [PATCH] pull: refuse complete src:dst fetchspec arguments

From
Daniel Barkalow <barkalow@iabervon.org>
Date
Oct 21, 2009, 00:55 UTC
Message-ID
<alpine.LNX.2.00.0910202044150.14365@iabervon.org>
In-Reply-To
<BLU0-SMTP889B2109047E949E039EFDAEBF0@phx.gbl>
On Tue, 20 Oct 2009, Sean Estabrooks wrote:
Show 14 quoted lines
> On Tue, 20 Oct 2009 20:15:23 -0400 (EDT)
> Daniel Barkalow <barkalow@iabervon.org> wrote:
> 
> Hi Daniel,
> 
> > Surely, "where you want the head stored locally" is somewhere that's 
> > information about a remote repository, and therefore under "refs/remotes/" 
> > (or "refs/tags/" or something) and therefore not possible to be checked 
> > out (in the "HEAD is a symref to it" sense).
> 
> Maybe, but it could also just be to create a temp local branch for
> merging into additional branches afterward with "checkout other;
> merge temp".   This is especially helpful when pulling from an
> annoyingly long URL instead of from a configured remote.
Maybe it should be fine to do:

$ git fetch long-url-here master:temp $ git merge temp $ git checkout other-branch-that-also-needs-it $ git merge temp

But "temp" is "refs/remotes/temp", not "refs/heads/temp"?
Show 11 quoted lines
> > Actually, I think it would be good to prohibit fetching into a new or 
> > existing local branch, whether or not it is checked out. We'd probably 
> > need to provide a plumbing method of doing a fetch, though, for script 
> > environments that aren't using the normal porcelain meanings of refs/ 
> > subdirectories. (Defining a bare repo with --mirror as not having local 
> > branches, of course)
> 
> I'm hoping you don't mean that all fetching to a new local branch should
> be prohibited and you're only talking about the current issue of full
> refspecs on and the pull command.   Otherwise i'd say it seems
> unnecessarily restrictive.

I think, actually, that creating or changing a local branch is really not what "fetch" (or the fetch part of pull) is about. I think that just leads to confusion about what's locally-controlled and what's a local memory of something remotely-controlled.

	-Daniel
*This .sig left intentionally blank*
Previous: Sean EstabrooksNext: Sean Estabrooks
Message 8 of 21 in “pull: refuse complete src:dst fetchspec arguments”
  1. pull: refuse complete src:dst fetchspec argumentsThomas Rast, Oct 20, 2009
  2. Thomas RastOct 20, 2009
  3. Wesley J. LandakerOct 20, 2009
  4. Sean EstabrooksOct 20, 2009
  5. Junio C HamanoOct 20, 2009
  6. Daniel BarkalowOct 21, 2009
  7. Sean EstabrooksOct 21, 2009
  8. Daniel BarkalowOct 21, 2009
  9. Sean EstabrooksOct 21, 2009
  10. Björn SteinbrinkOct 21, 2009
  11. Daniel BarkalowOct 21, 2009
  12. Thomas RastOct 21, 2009
  13. Jeff KingOct 23, 2009
  14. Daniel BarkalowOct 23, 2009
  15. Jeff KingOct 24, 2009
  16. Junio C HamanoOct 24, 2009
  17. Thomas RastOct 21, 2009
  18. Thomas RastNov 15, 2009
  19. Junio C HamanoNov 15, 2009
  20. Nanako ShiraishiDec 29, 2009
  21. Junio C HamanoDec 29, 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.