When there is a local repo copy, we could reduce bandwidth usage with it:
git clone --reference
for newer git (somewhen after 2.7.4) the fillowing option only generates a warning when the repo is missing:
git clone --reference-if-able
Compared to --depth, this has the advantage of full history.
As other clone options (like --depth), this is a local config.
We could also keep the last copy of the repo. Then use --dissociate as option, because this copies the git objects.
For other vcs providers (hg, ...) this could be implemented by first cloning locally, then pulling from remote.
When there is a local repo copy, we could reduce bandwidth usage with it:
git clone --referencefor newer git (somewhen after 2.7.4) the fillowing option only generates a warning when the repo is missing:
git clone --reference-if-ableCompared to --depth, this has the advantage of full history.
As other clone options (like --depth), this is a local config.
We could also keep the last copy of the repo. Then use
--dissociateas option, because this copies the git objects.For other vcs providers (hg, ...) this could be implemented by first cloning locally, then pulling from remote.