The goal of a Pre-receive (push) Hook is to validate all incoming commits as they first appear in repository. So, if changes are validated once, and they won’t be checked by the pre-receive hook again.
A Merge Checkvalidates all commits included into Pull Request (YACC does this even if they were checked already). This allows to postpone validation until PR merge, rather than at the time the changes are pushed. If you haven’t enabled push-hook, incoming changes will not be validated during push.
...