Description
When checking out a remote branch into a new local branch, SourceTree does not run submodule update. It does however run submodule update when checking out an existing local branch.
Here is the output of checking out a remote branch:
git -c diff.mnemonicprefix=false -c core.quotepath=false checkout -b GoldenThread --track origin/GoldenThread
Switched to a new branch 'GoldenThread'
M SiREAL_SDK/ARToolKit
Branch GoldenThread set up to track remote branch GoldenThread from origin.
Completed successfully
Now if I checkout master then re-checkout my local branch then I get:
git -c diff.mnemonicprefix=false -c core.quotepath=false checkout GoldenThread
Switched to branch 'GoldenThread'
M SiREAL_SDK/ARToolKit
git -c diff.mnemonicprefix=false -c core.quotepath=false submodule update --init --recursive
Submodule path 'SiREAL_SDK/ARToolKit': checked out '39dca40097b0ad6c70fcc588f5f41b8d07b310b4'
Completed successfully
This requires me to manually run submodule update when I first checkout a branch.