IMO the best way to learn and understand git is to use the command line. There are tons of places to visualize how it's working, like this: pcottle.github.io/learnGitBranching
Plus, the command line forces you to do things step by step, which can help prevent unwanted commits and such.