My git repository has two branches, 'master' and 'dev'.
Code committed to 'dev' goes through an automated build process before it is tested. Code that passes this is then merged into the 'master' branch.
Is it possible, using hooks or something else, to prevent normal direct commits on the 'master' branch and only accept merges from 'dev' to 'master'?