Git submodule url isn't playing nice with the cache

Hi Chris,

We use a similar repo structure, and use the following:

checkout:
    post:
        - git submodule sync
        - git submodule update --init --recursive || (rm -fr .git/config .git/modules && git submodule deinit -f . && git submodule update --init --recursive)

Broken down, if submodule update fails (which it will, because the forked submodule commit is unknown to the original repo), then blow away and restore submodules. Hope that helps.