A recent OS upgrade resulted in my Git version being bumped up to 3.x, an interesting feature of which is the new git switch command, which replaces part of the heavily overloaded git checkout functionality with something much clearer.
Now, to switch to branch foo you can just invoke git switch foo
And to create a new branch, instead of git checkout -b newbranch,
it's git switch -c newbranch
These are small changes, to be sure, but worthwhile in bringing more focus to individual commands, and relieving some of the incredibly heavy lifting being done by the flags passed to git checkout, which hopefully now can be my "tool of last resort" as it usually leaves me stranded in "detached head hell" ... my fault, not Git's!
I've also updated my gcm alias/script to use git switch, so accordingly it's now gsm.