In my opinion, commits aren't a record of why. They are a record of what. Commit messages a shorthand of what for easier skimming.
Comments answer why (and even 'what' is fine if the code is difficult.)
But simple rules like that always have exceptions.