Hi,
I'm trying to understand git's repacking behaviour, as the observed
behaviour doesn't match how I read the documentation or the code.
The problem we see is excessive backup increments for developer
directories. The cause is that pack files keep getting regenerated for
large repositories.
Users are not running 'git gc' manually, so the assumption is that this
is caused by 'git gc --auto' being run implicitly.
From what I can see in the code, and the documentation, it should only
pack up objects not already found in existing packs. Or at the very
least, not the objects found in the largest existing pack.
(at least not until gc.autoPackLimit is hit)
But this isn't happening. Old packs are constantly being replaced by new
ones. Despite most of the objects being old and stable.
We tried gc.bigPackThreshold in the hope it would force it to reuse
packs better. But all we got instead was duplication. It still creates
new packs with everything. It just stopped removing the old ones.
Some guidance would be appreciated. I cannot find anything in the code
or documentation that explains the current behaviour.
Regads,
--
Pierre Ossman Software Development
Cendio AB https://cendio.com
Teknikringen 8 https://twitter.com/ThinLinc
583 30 Linköping https://facebook.com/ThinLinc
Phone: +46-13-214600
A: Because it messes up the order in which people normally read text.
Q: Why is top-posting such a bad thing?