Add support for PackRefs RPC
While working with a customer importing a lot of GitHub pull requests, GitLab appears to create several keep-around refs per pull request imported. We saw 50,000+ keep-around refs created for the repository.
While investigating slow pushes, we noticed that git-receive-pack
will load all keep-around refs, even if the hideRefs
hides these refs. Packing these refs frequently is therefore important to performance.
We already have GitGarbageCollect
, RepackIncremental
, and RepackFull
, but we may not want to issue a full git gc
. I think it makes sense to add PackRefs
with the option of --all
.
Edited by Stan Hu