On Thu, Jan 11, 2018 at 10:33:15PM +0100, Ævar Arnfjörð Bjarmason wrote:
> 4. At the end of all this, we check *again* if we have >6700 objects, > if we do we print "run 'git prune'" to .git/gc.log, and will just > emit that error for the next day before trying again, at which point > we unlink the gc.log and retry, see gc.logExpiry. > > Right now I've just worked around this by setting gc.pruneExpire to a > lower value (4.days.ago). But there's a larger issue to be addressed > here, and I'm not sure how. IMHO the right solution is to stop exploding loose objects, and instead write them all into a "cruft" pack. That's more efficient, to boot (since it doesn't waste inodes, and may even retain deltas between cruft objects). But there are some tricks around timestamps. I wrote up some thoughts in: https://public-inbox.org/git/20170610080626.sjujpmgkli4mu...@sigill.intra.peff.net/ and downthread from there. -Peff