I teach Git on the command line and not via client (GUI) applications. Here's why, plus a look at some GUI apps that you can use after learning the command line.
My Git Essentials learning experience is a great way to learn everything you need to know about Git, including how to create workflows, fix problems, and collaborate with others.