Won't this not update the submodule if it already exists and we bump the version?  Why bother with the `test -d` part?