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

Re: [PATCH 0/4] Add git-pack-intersect

From
Junio C Hamano <junkio@cox.net>
Date
Nov 10, 2005, 00:15 UTC
Message-ID
<7vy83x73ze.fsf@assigned-by-dhcp.cox.net>
In-Reply-To
<43728523.1040209@etek.chalmers.se>
Lukas Sandström <lukass@etek.chalmers.se> writes:
> Perhaps if git-daemon ever does caching of packfiles, removing the smaller
> packfiles might not be optimal.
Ah, that reminds me of something.

I did not advertise it too much, but you can put a prepackaged packs in $GIT_DIR/pack-cache/ and it is used when upload-pack notices it is creating that exact pack.

This is useless for ordinary repository, but can be useful for historical repositories whose heads/tags never change (e.g. the Linux kernel repository resurrected from bkcvs). There you could:

	$ git repack -a -d
	$ ln $GIT_DIR/objects/pack/pack-* $GIT_DIR/pack-cache/.

and a clone request would feed the pack, without regenerating the pack data from scratch. upload-pack still reads, sorts and computes SHA1 hash of the list of objects to find the pack name, but that is a fairly quick operation, compared to the rest of the pack generation process.

Previous: Lukas SandströmNext: Lukas Sandström
Message 9 of 10 in “Add git-pack-intersect”
  1. 0/4 Add git-pack-intersectLukas Sandström, Nov 9, 2005
  2. 1/4 Add git-pack-intersectLukas Sandström, Nov 9, 2005
  3. 2/4 Add documentation for git-pack-intersectLukas Sandström, Nov 9, 2005
  4. 3/4 Add git-pack-intersect to .gitignoreLukas Sandström, Nov 9, 2005
  5. 4/4 Make git-repack use git-pack-intersectLukas Sandström, Nov 9, 2005
  6. Petr BaudisNov 9, 2005
  7. Andreas EricssonNov 9, 2005
  8. Lukas SandströmNov 9, 2005
  9. Junio C HamanoNov 10, 2005
  10. Rename git-pack-intersect to git-pack-redundantLukas Sandström, Nov 9, 2005

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.