Recently a colleague and I have been taking over a project that uses git submodules. When I first started work I cloned the project using the --recursive flag to also checkout the submodules. I didn't have any experience with submodules, so I ran into some problems, specifically updating and replacing modules. Here's what I have learned.
Updating a module