Is there a way to set a specific branch on GitHub to pull-only (read-only) or can I only set this for the whole repository?
Starting from March 30th 2016, GitHub does support branch permissions without any further tricks like required status checks: https://github.com/blog/2137-protected-branches-improvements