To add my own touch, I find staging certain parts of a file in the CLI bothersome, when I can just click-and-drag highlight what lines I want committed in eg. Sublime Merge. Not perfect, but waaay easier than with the default CLI in my opinion.
Something I've always wanted is a simple way to rearrange local commits between different branches (or reorder them) by clicking and dragging. I know there are CLI tools out there to do it, but I haven't explored the options yet. I think that's much more intuitive than doing the same actions using the CLI, although that's mostly because using the CLI forces you to know the Git internals by heart, which is probably a good thing in the long run.
I think for folks looking to basically do a "click-and-drag rebase" like that, a GUI interface with comparable ease in displaying and resolving patch application issues (diffs that don't apply) is hard to come by.
I've heard good things about gitkraken though, but haven't used it myself.
I find 95% people should use decent GUI. That 5% I have never worked with.
Also 40% of devs it is a badge of honor “not using GUI” and fool themselves they understand what is going on.
Numbers based on my mood today and S&P500 performance last week - don’t take it personally but maybe take into account it might be useful to see those branches in GUI, maybe it is useful to have diff tool where you can click around, take time to understand the context of the team setting and what others were just doing and what is going to prod soon.
To add my own touch, I find staging certain parts of a file in the CLI bothersome, when I can just click-and-drag highlight what lines I want committed in eg. Sublime Merge. Not perfect, but waaay easier than with the default CLI in my opinion.