Ability to reject commits from entering repository

If a bad commit was once in the repository and we never want it
to enter the repository after, e.g., a filter-branch operation
to remove it, we can use a git-notes branch which references bad
commits to keep it from entering the repository again.

This adds a check of the notes branch refs/meta/reject-commits to
check whether a commit should be rejected because it is bad or an
ancestor it's going to merge in is bad.

Change-Id: Ia75e4aa33435bd04faafff7d1a753127063790bb
1 file changed