Re: [PATCH] git exproll: steps to tackle gc aggression
- From
Duy Nguyen <pclouds@gmail.com>
- Date
- Aug 6, 2013, 12:24 UTC
- Message-ID
- <CACsJy8CGWJ07Uk8EBjfejdyshKB1NKk=_7VUoeyZWZgJFqCSkg@mail.gmail.com>
- In-Reply-To
- <1375756727-1275-1-git-send-email-artagnon@gmail.com>
On Tue, Aug 6, 2013 at 9:38 AM, Ramkumar Ramachandra <artagnon@gmail.com> wrote:
Show 6 quoted lines
> + Garbage collect using a pseudo logarithmic packfile maintenance > + approach. This approach attempts to minimize packfile churn > + by keeping several generations of varying sized packfiles around > + and only consolidating packfiles (or loose objects) which are > + either new packfiles, or packfiles close to the same size as > + another packfile.
I wonder if a simpler approach may be nearly efficient as this one: keep the largest pack out, repack the rest at fetch/push time so there are at most 2 packs at a time. Or we we could do the repack at 'gc --auto' time, but with lower pack threshold (about 10 or so). When the second pack is as big as, say half the size of the first, merge them into one at "gc --auto" time. This can be easily implemented in git-repack.sh.
-- Duy