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

Re: .git/info/refs

From
HAH. Peter Anvin <hpa@zytor.com>
Date
Jan 24, 2007, 17:06 UTC
Message-ID
<45B79208.2080502@zytor.com>
In-Reply-To
<Pine.LNX.4.63.0701241746390.22628@wbgn013.biozentrum.uni-wuerzburg.de>
Johannes Schindelin wrote:
Show 17 quoted lines
> Hi,
> 
> On Wed, 24 Jan 2007, H. Peter Anvin wrote:
> 
>> Johannes Schindelin wrote:
>>> Granted, for some things this might work. However, I would not wreak 
>>> havoc by changing the format of .git/info/refs, rather put the details 
>>> you wanted into .git/info/refs-details.
>>>
>> It's not clear to me if it would be wrecking havoc.  After all, if a 
>> format can't be expanded *at all*, there is something wrong, and adding 
>> things to the end of a line is a common structured way of expansion. 
>> Hence the original query
> 
> The idea of .git/info/refs is to enable dumb transports to fetch something 
> akin to intelligently. They don't need that information, and frankly, I 
> don't think they should need to understand it.

I don't think adding 10 digits to each line is going to be a sizable impact on anything.

> I also expect that they interpret everything after the sha1 as refname, 
> what with our having become quite liberal with refnames (they can contain 
> spaces, tabs, and even a small amount of special K). So I don't see a way 
> to upgrade the file format.
They can also contain newlines, probably, so escaping is obligatory anyway.
> But as should be clear by now, I'd prefer additional information -- that 
> is of no interest to dumb transports anyway -- to be put in an own file.
Yes, but the argument seems to be philosophical.
> That also opens the possibility of, say .git/info/perl/, which contains 
> _only_ serialized perl objects! I imagine this could be a performance 
> booster.
For certain things, I'm sure.
Show 11 quoted lines
>>> However, for other things (like showing a certain number of commits), 
>>> it _might_ make sense to cache them (e.g. when literally thousands of 
>>> people look at the 100 last commits of linux-2.6.git), but not for 
>>> others (e.g. the 100th last to the 200th last commit of 
>>> git-tools.git).
>> Any query that's within a repository is fairly easily cachable 
>> post-generation.  The front page (and its RSS variant) is a bit of an 
>> exception, because it involves all repositories at once.
> 
> ... and here we have a problem, right? No single update hook can update 
> the _whole_ information.
I don't see a problem.
	-hpa
Previous: Johannes SchindelinNext: Jakub Narebski
Message 9 of 39 in “.git/info/refs”
  1. H. Peter AnvinJan 24, 2007
  2. Jakub NarebskiJan 24, 2007
  3. H. Peter AnvinJan 24, 2007
  4. Johannes SchindelinJan 24, 2007
  5. H. Peter AnvinJan 24, 2007
  6. Johannes SchindelinJan 24, 2007
  7. H. Peter AnvinJan 24, 2007
  8. Johannes SchindelinJan 24, 2007
  9. H. Peter AnvinJan 24, 2007
  10. Jakub NarebskiJan 24, 2007
  11. Jakub NarebskiJan 24, 2007
  12. Johannes SchindelinJan 24, 2007
  13. H. Peter AnvinJan 25, 2007
  14. Jakub NarebskiJan 26, 2007
  15. Junio C HamanoJan 26, 2007
  16. H. Peter AnvinJan 26, 2007
  17. Jakub NarebskiJan 26, 2007
  18. Johannes SchindelinJan 26, 2007
  19. H. Peter AnvinJan 26, 2007
  20. H. Peter AnvinJan 26, 2007
  21. Jakub NarebskiJan 24, 2007
  22. hpa@zytor.comJan 24, 2007
  23. Johannes SchindelinJan 25, 2007
  24. H. Peter AnvinJan 25, 2007
  25. Johannes SchindelinJan 25, 2007
  26. hpa@zytor.comJan 24, 2007
  27. Junio C HamanoJan 25, 2007
  28. H. Peter AnvinJan 25, 2007
  29. Junio C HamanoJan 25, 2007
  30. H. Peter AnvinJan 25, 2007
  31. Johannes SchindelinJan 25, 2007
  32. H. Peter AnvinJan 27, 2007
  33. Santi BéjarJan 31, 2007
  34. Johannes SchindelinFeb 1, 2007
  35. H. Peter AnvinFeb 1, 2007
  36. Johannes SchindelinFeb 1, 2007
  37. H. Peter AnvinFeb 1, 2007
  38. Matthias LederhoferFeb 1, 2007
  39. H. Peter AnvinFeb 1, 2007

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.