Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #119 from gold2718/submodules
New capability to use git submodule info to checkout externals By default, an external with no specified sub-externals configuration file will have its submodules checked out according to the information in that repository's .gitmodules file. This process is recursive. To prevent submodules from being checked out, the external description for that repository should be listed as "externals = none". To use submodule URL, local path, and reference hash information for a sub-external, replace the 'local_path', 'repo_url', and 'branch' 'hash' or 'tag' keywords with "from_submodule = True". User interface changes?: Yes externals keyword can be "none" to prevent loading submodules. from_submodule keyword can be used to replace external configuration information with information from a repository's submodule configuration. Fixes: #96 Testing: test removed: none unit tests: all pass system tests: all pass, added TestSubrepoCheckout to test new functionality manual testing: Tests with ESCOMP/MOM_interface (see below) Just run checkout_externals: no change Remove "externals = ../Externals_MOM.cfg" from Externals.cfg: All four submodules of MOM6 checked out Set "externals = none" in Externals.cfg: No submodules checked out (empty directories) Modify da_hooks external in Externals_MOM.cfg (see below): da_hooks is checked out with MOM6 .gitmodules configuration. [pkg/MOM6_DA_hooks] protocol = git from_submodule = True required = True
- Loading branch information