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

Re: [WISH] Store also tag dereferences in packed-refs

From
Junio C Hamano <junkio@cox.net>
Date
Nov 18, 2006, 19:04 UTC
Message-ID
<7vac2oefuz.fsf@assigned-by-dhcp.cox.net>
In-Reply-To
<e5bfff550611181047w6712774fkccc697d312b87c7e@mail.gmail.com>
"Marco Costalba" <mcostalba@gmail.com> writes:
Show 21 quoted lines
> On 11/18/06, Petr Baudis <pasky@suse.cz> wrote:
>> On Sat, Nov 18, 2006 at 07:38:11PM CET, Junio C Hamano wrote:
>> >
>> > I think the question is why you would want to run peek-remote.
>> > Do you use the ^{} peeled-onion information and if so how and
>> > why?
>>..
> Yes. It is. From a list like
>
>> > > d9b0f913ce0508fcc83e642e0241f373428368e5        refs/tags/v1.4.3
>> > > e0b0830726286287744cc9e1a629a534bbe75452        refs/tags/v1.4.3^{}
>> > > 4314f5982d2aac08001a977fc0b1b611e858e025        refs/tags/v1.4.3-rc1
>> > > 1965efb1599f59b8e3380335d1fa395e2008a30b        refs/tags/v1.4.3-rc1^{}
>>
> qgit (but also gitk FWIK) extracts
>
> e0b0830726286287744cc9e1a629a534bbe75452
> 1965efb1599f59b8e3380335d1fa395e2008a30b
>
> Stores in a quick look-up container and then checks against loaded
> commits to, as Pasky says, attach the nice green markers to tags.
Two answers.
A quick one that is to the point to solve "your" problem.
	show-ref -d

Not a quick one but that may lead to solution of a similar issue for wider audiences is...

I wonder how fast update-server-info is under the same condition with your earlier timing.

I am not suggesting you to use update-server-info. The reason I am wondering about it are:

 (1) traditionally, "peek-remote ." has been the only way to get
     to that information, so you have every right to keep doing
     so;
 (2) however, even with presense of packed-refs, upload-pack
     that is invoked by peek-remote needs to consult unpacked
     refs first and then fall back to packed-refs, and only
     using the ^{} information "cached" in packed-refs file and
     computing ^{} itself when dealing with unpacked refs means
     more code, which we need to assess the pros-and-cons.
 (3) another inefficiency of using "peek-remote ." is that it
     spawns another process in the "remote" repo and talks with
     it.

So storing this information making upload-pack to reuse it when it can might make things go faster for other applications but first I wanted to know how much overhead is incurred in the extra upload-pack process, and time update-server-info needs to prepare the info in .git/info/refs would be a way to get a rough estimate for that (you subtract that from "peek-remote ." time).

Previous: Marco CostalbaNext: Marco Costalba
Message 5 of 29 in “[WISH] Store also tag dereferences in packed-refs”
  1. Marco CostalbaNov 18, 2006
  2. Junio C HamanoNov 18, 2006
  3. Petr BaudisNov 18, 2006
  4. Marco CostalbaNov 18, 2006
  5. Junio C HamanoNov 18, 2006
  6. Marco CostalbaNov 19, 2006
  7. Linus TorvaldsNov 19, 2006
  8. Junio C HamanoNov 19, 2006
  9. Junio C HamanoNov 19, 2006
  10. Linus TorvaldsNov 19, 2006
  11. Marco CostalbaNov 19, 2006
  12. Linus TorvaldsNov 19, 2006
  13. Marco CostalbaNov 19, 2006
  14. Marco CostalbaNov 19, 2006
  15. Linus TorvaldsNov 19, 2006
  16. Linus TorvaldsNov 19, 2006
  17. Junio C HamanoNov 19, 2006
  18. Linus TorvaldsNov 19, 2006
  19. Jakub NarebskiNov 19, 2006
  20. Linus TorvaldsNov 19, 2006
  21. Junio C HamanoNov 20, 2006
  22. Jakub NarebskiNov 20, 2006
  23. Marco CostalbaNov 20, 2006
  24. Linus TorvaldsNov 20, 2006
  25. Junio C HamanoNov 20, 2006
  26. Marco CostalbaNov 19, 2006
  27. Linus TorvaldsNov 19, 2006
  28. Linus TorvaldsNov 19, 2006
  29. Jakub NarebskiNov 20, 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.