#!/bin/bash modules=$(git config -f .gitmodules --list | grep -E '^submodule\.') for moduleUrl in $(echo "$modules" | grep '\.url=') do moduleName=$(echo "$moduleUrl" | sed -e 's/^submodule\.\(.*\).url=\(.*\)$/\1/') moduleUrl=$(echo "$moduleUrl" | sed -e 's/^submodule\.\(.*\).url=\(.*\)$/\2/') modulePath=$(echo "$modules" | grep ".*$moduleName\.path=" | sed -e 's/^.*path=\(.*\)$/\1/') echo "$moduleUrl -> $modulePath" git submodule add "$moduleUrl" "$modulePath" done git submodule init git submodule update