Git's "add -p" ui is great. If you're stuck on another VCS you might want to check out http://porkrind.org/commit-patch/ which, through the "commit-partial" command, lets you review and edit your patch before committing. It works with many of the open source VCSes out there.
I tend to use it even for git just so I have a consistent interface no matter what project I'm working on.
I tend to use it even for git just so I have a consistent interface no matter what project I'm working on.