I am avoiding git's CLI like the plague, but IMHO the staging area is awesome to use with a GUI like Git Tower - it was never that easy to stage (and commit) line by line, leaving out stuff like printf debugging that shouldn't go down the wire.
Then again, I guess the GUI could just implement the staging area itself and pass line numbers to "git commit" :)
Yes, exactly. Atlassian's client (I forget the name) has that feature too, and it's great, but it can just do it directly if there's no staging area (as it does with hg, I assume). If you're in the CLI, you can use the exact same command you use to stage stuff to commit stuff, and then there's exactly zero benefit.
Then again, I guess the GUI could just implement the staging area itself and pass line numbers to "git commit" :)