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

[PATCH 3/4] Documentation/gitformat-pack.txt: remove multi-cruft packs alternative

From
Taylor Blau <me@ttaylorr.com>
Date
Aug 28, 2023, 22:49 UTC
Message-ID
<c6ae0716c631ac4a3b5654c50d768d5ea920fa6d.1693262936.git.me@ttaylorr.com>
In-Reply-To
<cover.1693262936.git.me@ttaylorr.com>

This text, originally from 3d89a8c118 (Documentation/technical: add cruft-packs.txt, 2022-05-20) lists multiple cruft packs as a potential alternative to the design of cruft packs.

We have always supported multiple cruft packs (i.e. we use the most recent mtime for a given object among all cruft packs which contain it, etc.), but haven't encouraged its use.

We still aren't encouraging users to go out and generate multiple cruft packs, but let's take a step in that direction by dropping language that suggests we aren't capable of working with multiple cruft packs.

Signed-off-by: Taylor Blau <me@ttaylorr.com>
---
 Documentation/gitformat-pack.txt | 10 +---------
 1 file changed, 1 insertion(+), 9 deletions(-)
diff --git a/Documentation/gitformat-pack.txt b/Documentation/gitformat-pack.txt
index 0c1be2dbe8..49bb09d7df 100644
--- a/Documentation/gitformat-pack.txt
+++ b/Documentation/gitformat-pack.txt
@@ -618,21 +618,13 @@ understand cruft packs.
 
 Notable alternatives to this design include:
 
-  - The location of the per-object mtime data, and
-  - Storing unreachable objects in multiple cruft packs.
+  - The location of the per-object mtime data.
 
 On the location of mtime data, a new auxiliary file tied to the pack was chosen
 to avoid complicating the `.idx` format. If the `.idx` format were ever to gain
 support for optional chunks of data, it may make sense to consolidate the
 `.mtimes` format into the `.idx` itself.
 
-Storing unreachable objects among multiple cruft packs (e.g., creating a new
-cruft pack during each repacking operation including only unreachable objects
-which aren't already stored in an earlier cruft pack) is significantly more
-complicated to construct, and so aren't pursued here. The obvious drawback to
-the current implementation is that the entire cruft pack must be re-written from
-scratch.
-
 GIT
 ---
 Part of the linkgit:git[1] suite
-- 
2.42.0.49.g03c54e21ee
Previous: Junio C Hamano
Message 8 of 8 in “pack-objects: support `--max-pack-size` for cruft packs”
  1. 0/4 pack-objects: support `--max-pack-size` for cruft packsTaylor Blau, Aug 28, 2023
  2. 2/4 builtin/pack-objects.c: support `--max-pack-size` with `--cruft`Taylor Blau, Aug 28, 2023
  3. Junio C HamanoAug 29, 2023
  4. Taylor BlauAug 29, 2023
  5. 4/4 Documentation/gitformat-pack.txt: drop mixed version sectionTaylor Blau, Aug 28, 2023
  6. 1/4 builtin/pack-objects.c: remove unnecessary strbuf_reset()Taylor Blau, Aug 28, 2023
  7. Junio C HamanoAug 29, 2023
  8. 3/4 Documentation/gitformat-pack.txt: remove multi-cruft packs alternativeTaylor Blau, Aug 28, 2023

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.