On Wed, May 27, 2015 at 01:20:11PM +0000, Frawley, Sarah wrote: > Thanks Heiko for getting back to me. > > Correct when I referred to 10+ layers I meant nested repositories > which make up a large hierarchy. Some repositories are repeated > across the hierarchy. We check-out submodules to tag versions (as > opposed to master branch). If we need to roll out a particular change > across a hierarchy (e.g. 60 repos) then every level in the hierarchy > needs to pick up new submodule tags. > > The main 2 issues that we see are: > > 1. Enforcement of absolute paths in git submodules - I am currently > trialing using a pre-commit hook to highlight this issue to users so > that they can fix their submodule urls to relative paths. So you mean, enforcement of relative paths. Right? It might be a good idea to put some code in 'git submodule add' that would automatically use a relative path instead of absolute path if it can calculate one from the superproject. I think that would help your users even more as they do not get an error from the pre-commit hook, but just having everything right after doing the add. If you want to go that route it should not be that much different from the hook, since the submodule subcommand code is all bash. > 2. Slowness Integrating updates to submodule hierarchy -I have been > looking at ways of automating such a roll out - this can be useful for > new project setups or for rolling out an update to all repos and > quickly integrating it into the submodule hierarchy. The link below > shows something similar however it checks out a master branch of each > submodule in its hierarchy. > https://chrisjean.com/recursively-updating-git-submodules/ How about git submodule update --init --recursive ? That should do the same as the script written in that blog post. Or am I missing something? Cheers Heiko -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html