在我跑之前git gc
,我有几千个松散的物体:
$ git count-objects -v
count: 3706
size: 17164
in-pack: 147149
packs: 9
size-pack: 46619
prune-packable: 0
garbage: 0
size-garbage: 0
(注意松散的物体count
和size
)。在git gc
我吃了更多之后:
$ git count-objects -v
count: 6735
size: 19687
in-pack: 142215
packs: 1
size-pack: 43373
prune-packable: 0
garbage: 0
size-garbage: 0
我知道发生这种情况是因为git gc
当它们变得无法访问时从包中逐出对象;作为松散的物体,它给了他们新的“生命租约”。
我怎样才能避免这种单一的行为git gc
发生?我希望它的所有其他行为保持不变,即所有超时、各种垃圾清除、除此之外的所有行为。
我git gc
最多每月跑一次。出于某种我不知道的原因,git gc --auto
几乎没有运行过(我不想改变它)。