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

git repack on shallow clone of large repo (linux kernel) hangs at "Enumerating objects"

From
Bagas Sanjaya <bagasdotme@gmail.com>
Date
May 16, 2021, 13:09 UTC
Message-ID
<c98e51b0-d89b-9170-e3bc-69ac9ec5e114@gmail.com>
Hi,

I have a shallow clone of linux-stable repo [1] on my computer. Now I'm trying to repack with `git repack -A -d`.

Before repacking, here is the object counts on my clone (`git count-objects -v`):

Show 8 quoted lines
> count: 0
> size: 0
> in-pack: 3162206
> packs: 17
> size-pack: 3120393
> prune-packable: 0
> garbage: 0
> size-garbage: 0
And I have 41496 commits (only on master).
And here are relevant config used:
> pack.deltacachesize=120M
> pack.windowmemory=400M
> pack.packsizelimit=650M
> pack.autopacklimit=0

When I trigger repack operation, I expected that all objects on 17 packs are consolidated into several 650M-sized packs. However, in my case, repacking was hang at "Enumerating objects" stage, that is I stuck at:

"Eumerating objects: 902036"

I also try to reproduce the issue with other repo, such as with local copy of GCC repo on my computer [2] using similar config, and the repack succeed without any errors.

Am I missing something?

[1]: https://github.com/gregkh/linux [2]: https://github.com/gcc-mirror/gcc

-- 
An old man doll... just what I always wanted! - Clara
Next: Jeff King
Message 1 of 6 in “git repack on shallow clone of large repo (linux kernel) hangs at "Enumerating objects"”
  1. Bagas SanjayaMay 16, 2021
  2. Jeff KingMay 17, 2021
  3. Bagas SanjayaMay 18, 2021
  4. Jeff KingMay 18, 2021
  5. Bagas SanjayaMay 22, 2021
  6. Jeff KingMay 22, 2021

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.