I have reluctantly taken GIT on board and have tried a Silverstripe install using GIT with the piston script (on linux but via windows and PHPstorm - the script was run on windows) . I found the master version unstable and the admin looked wierd so I decided to change from master to 2.4.5.
It is of course quite possible that my windows piston version mangled the code with its CRLF conversion.
Changing tags appears to be nearly impossible using the script so I tried a version with GIT submodules. Wow, is there a flaw there or what? If you install the submodules in a master revision and switch to a tag - wham, they vanish! There is no means I can see of getting the modules to appear in all revisions and track the superproject revision.
In a nutshell i think the cms and sapphire should be in the main project. Who is going to use the project without them? That was we can update and switch at will.