I've tried to use GitX and SourceTree in my workflow and always end up going back to gitk. There's always some information, view or action I can do in gitk that I can't make the others do. I find git from the command line to be the most painless. Everything else is always the third thing after gitk and command-line. Seeing multiple stashes used to be a great extra feature, then I just stopped using stashes.