Everett:
I would argue it’s best to learn Git on the command-line, and supplement it with something like GitX (which helps visualize your branches/merges in graphs, do visual, line-by-line cherry picking, etc.). Once you get familiar enough with the git commands you need to use daily, and all the options that can be used with them, you’ll understand why a GUI limits what you can do with the tool. But don’t get me wrong, I love GitX as a supplement to the CLI.
Also, (if using OS X) to make your life easier, make sure and
enable the enhanced git shell which provides tab auto-completion for git commands, command options, branch names, remote names, and more. It makes life on the CLI much smoother.
Cheers