Yea, probably a `repo forall -c git gc --auto` once a week, or every
couple of weeks, would be a good idea. How frequently you would need
to GC depends on how frequently you fetch, the less often you fetch,
the less small objects are created in the repository, so the less
often you need to GC. Fortunately `git gc --auto` has rules built
into it to mostly guess this correctly, and only repack if its
necessary, so doing `repo forall -c git gc --auto` about once a week
is fairly reasonable.
There really isn't any danger to repacking repositories, Git and
Gerrit are quite good about handling concurrent read access to a
repository that is actively being repacked. The only downside to
repacking is incremental filesystem backups would be larger, as there
are now new files that contain a complete copy of the repository.
FWIW, I repack android.git.kernel.org about once a month. However,
because of the way Gerrit Code Review creates objects on disk, I
repack with the -f flag, to force recomputation of all deltas. Its
rather time consuming, and easily takes an hour or more.