I have to say that I still feel that "git commit -a" is trouble. It's OK to ease one in, but the faster you free yourself from thinking of committing as "saving the state of things" and begin to think of committing as "introducing a change" the more sense it all makes for everyone else.
(I say this having had my team spend a week or so cleaning up a tree for public consumption and hearing them say things like "I don't understand what this change does" -- if we don't understand, we can't publish it)