I came to post that. Magit has a very similar way of thinking about things, with commands being 'stage' and 'unstage' and a very simple revert, and nearly all commands work on chunks as well as on entire files. Nearly as much of a step up as using git was in the first place.
I've started using magit and I really like it; I like that I can just say "revert" on a file and magit knows what the right command is. Makes me think a whole lot less about Git and a whole lot more about my project.
http://philjackson.github.com/magit/