The important thing about making commits separately and as much self-contained as possible is to allow cherrypicking.

Say you're on a development branch and you added something new, that the Project thinks can be and should be added to the Main branch. By having that addition in its own self-contained commit allows the Project to create a new branch, cherrypick the commit, and merge the branch to Main, without having to pull in the rest of the development branch.

It's of course not really necessary if you're the only person doing all the development, but it's just a good etiquette if you're working with other people in the Project.