On May 6, 2017 4:38 AM Ciro Santilli wrote: > This is a must if you are working with submodules, otherwise every git checkout requires a git submodule update, > and you forget it, and things break, and you understand, and you go to stack overflow questions > http://stackoverflow.com/questions/22328053/why-doesnt-git-checkout-automatically-do-git-submodule-update-recursive > http://stackoverflow.com/questions/4611512/is-there-a-way-to-make-git-pull-automatically-update-submodules > and you give up and create aliases :-) I rather like the concept of supporting --recurse-submodules. The complexity is that the branches in all submodules all have to have compatible semantics when doing the checkout, which is by no means guaranteed. In the scenario where you are including a submodule from a third-party (very common - see gnulib), the branches likely won't be there, so you have a high probability of having the command fail or produce the same results as currently exists if you allow the checkout even with problems (another option?). If you have control of everything, then this makes sense. Cheers, Randall