Sometimes I have staged changes in a file that I want to split or omit the changes in several commits for the sake of readability, maintenance and history cosmetic. There are two useful commands:
Staging and staging files:
git add -i
If what I want is to manage the staging within only one file, then I use:
git add -p (--patch)