Commit messages are one of the most important parts of using version control. Badly written messages make it much harder to see at a glance what's changed in the project.
Keep your commits as small and atomic as possible. The best way to consider this is to think about reverting your commit. That is, if something is wrong in a commit, what are the logically separate parts that could be undone?