mirroring: reduce bloat caused by mirrors using git fast-import
When mirroring is enabled, several of the foreign VCS mirror types
make use of git fast-import to import revisions from the foreign VCS.
Unfortunately, by design, git fast-import creates horrific packs.
They have a poor object order and have poor object deltas. This
creates unnecessary bloat. The bloat can be more than 4x!
While a standard git repack -a -d will correct the object order,
it will not correct the bloat since that's primarily caused by
poor object deltas.
To fix this, arrange for any git fast-import created packs to be
repacked with the --no-reuse-delta option before they participate
in the normal repack that combines everything but does not use the
--no-reuse-delta option.
Only do this at normal gc time.