Geo: synchronize fork repositories with `--reference`
As being discussed in https://gitlab.com/gitlab-org/gitlab-ee/issues/3147#note_37334999 (and onward), Geo could utilize the
--reference option when cloning forks of projects where the repo is already synced. This would prevent sending all the blobs of the parent repo over again.
The usage of
--reference should be combined with:
--dissociate Borrow the objects from reference repositories specified with the --reference options only to reduce network transfer, and stop borrowing from them after a clone is made by making necessary local copies of borrowed objects. This option can also be used when cloning locally from a repository that already borrows objects from another repository--the new repository will borrow objects from the same repository, and this option can be used to stop the borrowing
But some more research might be needed, see https://gitlab.com/gitlab-org/gitlab-ee/issues/3147#note_37382071.