That's how I learned it but quickly I felt like I was missing important things and didn't really understand the tool. Then I took the time to read pro git and realized it is actually pretty simple.
Git has became so ubiquitous that I think it's worth spending some time to understand it thoroughly.
A great deal of the confusion around more advanced tasks (rebasing, etc) is removed when working from those first principles of the system.
Great advice!
Is there a windows command line version, or is there a GUI version I should start them on?
This installs the dependencies and environment needed for building Git from source. I think that's overkill for most users.
It seems cruel to make somebody relearn their command-line interface only to give them the neutered, confused interface that Git Bash provides.
You might want to see the cmder project it can come with a build that includes it all ready to go. http://bliker.github.io/cmder/
I was discouraged by early releases of SourceTree for Windows because it was buggy. I believe it has improved by now, but I got used to Git Extensions already. It's open source and written in C#, by the way - I keep on planning to fork it and make it more to my liking, just can't find time for that :)
If I recall well, the GitHub app doesn't provide any branch visualization, correct me if I'm wrong.
Git Extensions could be a good choice for teaching, because you get a preview of what commands are being executed by the client. It's not a blackbox that hides what Git does underneath.
Just learning the very basic actions will get you up and running to gain experience. I have found that many nuances of git are difficult to learn by reading theoretical examples, but fairly easy to understand once you encounter and research a similar problem in your real workflow.
If you have co-workers whose workflow you can copy then I don't think it is needed, but if you want to start a project from scratch with Git then having a plan like this can be really helpful.