I am saving my work at night with a single commit for many files. I wonder if it would be better to commit for each file but this seems like a lot more work.
I have
"Easy to understand" means also:
git bisect
fails way too soon)See "understanding the Git workflow" for more: you need to differentiate:
So pay attention to the "fast-forward" merge that Git uses by default: don't forget to clean-up the history of branches you are about to merge that way into public branches.
When to commit and what to commit is an art, and there are no black-and-white rules. That being said, there are habits that are easier to understand than others.
In general, I think you should optimize your commits for understandability - if you go back and read the diff for the commit, can you figure out what you accomplished in the changes?
If you want to be more specific, here's a long list of what I think are do's and don'ts: