Checkout does not create a new directory structure,
but
switch your working tree to the desired revision.
So your other scripts do not need to change. Using checkout
you switch your working git tree to the desired version, then you will do
tasks that you need - like building. And by further checkout you switch
your working git tree to the next desired version. Everything is still in the
same working folder.
For example - switch whole tree to v3.5.13-sru branch:
git checkout v3.5.13-sru && git submodule update --recursive
...and switch back to current state of master branch:
git checkout master && git submodule update --recursive
Note: In this switching may occur a little problem with
modules that are not contained in the desired version.
So checkout only creates a viewing illusion. That is, the package sources remain the same
as the most recent re-sync and only the view a person has is different.
As my build scripts just copy the package sources directly from GIT, the view illusion
does not help.
I am not grasping how my build scripts can distinguish the difference. I understand how my
eyes distinguish the difference because GIT creates the illusion of what I am allowed to
see. Yet the underlying sources in the package tree remain exactly the same.
Darrell