From: Jens Lehmann Date: Fri, 03 Oct 2014 11:17:09 GMT Subject: Re: Submodules and GIT_ALTERNATE_OBJECT_DIRECTORIES Message-ID: <542E85B5.3020101@web.de> In-Reply-To: <878ul19r5y.fsf@steelpick.2x.cz> Am 30.09.2014 um 15:25 schrieb Michal Sojka: > I'd like to shorten the time needed by our continuous integration (CI) > tool to clone the source repositories. Currently the full clone takes > about 10 minutes (even from local server). Our main repository has > several submodules so the CI tool runs "git submodule update --init". My > idea was to use GIT_ALTERNATE_OBJECT_DIRECTORIES to cache objects from > several submodule repositories locally. However, this does not work > because GIT_ALTERNATE_OBJECT_DIRECTORIES is considered local to the > super-project and is not propagated to the "git clone" for submodules > (git-submodule.sh calls clear_local_git_env). > > My question is why is GIT_ALTERNATE_OBJECT_DIRECTORIES considered local > to the repository? If I could modify the command-line I would use the > "git submodule update" with the --reference option, which is propagated > to clones of all submodules. Letting GIT_ALTERNATE_OBJECT_DIRECTORIES > propagate to the submodules should have the same effect as --reference > option. So why it is not propagated? Because then it would /always/ propagate? So while that would have the same effect as using the --reference option, not using the --reference option would behave differently, no?