Well there is no simple answer. Heavily depends on your team. And on your overall workflow. The benefit of post-commit is, that you can take some time to deeply review and comment it. On pre-commit you're always in a hurry, because features / fixes need to be delivered.
If you have a solid workflow, with testing / ci . I think it's okay to make it post-commit. However you can also automate it if you make it pre-commit.