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

Re: git repack -A -d doesn't remove objects found in alternates?

From
Bryan Turner <bturner@atlassian.com>
Date
Sep 17, 2021, 09:08 UTC
Message-ID
<CAGyf7-E7PcRGiEd_U5bcw1na7H0LGDMw81s4SUDE=DH+4G3QYA@mail.gmail.com>
In-Reply-To
<20210917085623.rjpmqqhb5xap26jd@pengutronix.de>

On Fri, Sep 17, 2021 at 1:56 AM Uwe Kleine-König <u.kleine-koenig@pengutronix.de> wrote:

Show 23 quoted lines
>
> Hello,
>
> I wonder if I do something wrong, or if I just don't understand
> something:
>
>         ukl@dude04:~/work$ git version
>         git version 2.30.2
>
>         ukl@dude04:~/work$ git clone https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
>         ...
>         ukl@dude04:~/work$ cd linux/
>         ukl@dude04:~/work/linux$ du -sh .git/objects
>         2.6G    .git/objects
>         ukl@dude04:~/work/linux$ echo "/ptx/work/user/git/linux.git/objects" > .git/objects/info/alternates
>
>         ukl@dude04:~/work/linux$ git repack -A -d
>         ...
>         ukl@dude04:~/work/linux$ du -sh .git/objects/
>         2.6G    .git/objects/
>
> I would have expected a drastic size decrease from git repack after the
> alternate is added.

You're missing -l on your repack command. See git help pack-objects and look for --local. Without -l, repack includes copies of the objects you're borrowing, so your pack size doesn't change.

Hope this helps! Bryan

Previous: Uwe Kleine-KönigNext: Uwe Kleine-König
Message 2 of 3 in “git repack -A -d doesn't remove objects found in alternates?”
  1. Uwe Kleine-KönigSep 17, 2021
  2. Bryan TurnerSep 17, 2021
  3. Uwe Kleine-KönigSep 17, 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.