ewemoa was explaining this to me and i didn't get it until i tried it, but i must admit it is useful.
I've been using SmartGit client.
For those who don't know what we're talking about, it's this:
Traditionally with a version control system, you might make some changes to various files in your project, then you commit them as a set, and add a short description of the changes.
If you have made a bunch of completely different kinds of changes to lots of different files, this can lead to some confusing updates, like "Changed a whole bunch of stuff in different files".
So we're talking about the ability to interactively select a subset of files, commit those changes with a useful description of what's changed in THOSE FILES ONLY, and then repeat the process a number of times with different subsets of files.