The lead tech at one place I work at uses the commandline for his own commits, but a gui app (can't recall which one) for manipulating merges and pull requests, as it more reliably deals with issues in his experience.
To be completely honest, I also do it like this at the moment, using Kdiff as a merge tool. I've been thinking about moving over to Ediff, but I'm lazy.