Sticking to the Git example: - visualising history (in gui it is just there) - opening old versions of files - visualising a complete log of a file and then jumping to individual diffs/commits
The fact that in a decent GUI everything that could possibly be a link is, is very useful. I do not ned to go around copy pasting SHA1 sums. I drop down to command line when I need an occasional filter-branch or do some arcane incantations. But maybe Git is a bad example because it has a notoriously bad CLI.
Some other example, debugging. For me it seems that you can actually see whether a programmer uses a visual debugger or a cli. If they have to drop down to GDB then their code will most probably be sprinkled with useless debug macros.
Setting break points, jumping from function to function is easier with visual debugger and a good IDE. (note that the IDE can be emacs or vim running in a terminal session for what I care)
> With nearly every program that I use I start by depending heavily on the GUI and then transition to using almost exclusively keyboard shortcuts as I become a power user, as GUIs are fundamentally inefficient.
Keyboard shortcuts are awesome of course, but I think they are so efficient because there is a GUI around. In a GUI you can always see more state at the same time. This is because graphics can sometimes pack more than text in the same space (e.g.: a visualised Git tree or a graph spitted out from callgrind)