I would like to prevent commits to master using a local commit hook as per the answer at https://stackoverflow.com/a/40465455/329496
That works fine as I can now merge changes on feature branches into master:
git merge feature_branch
I actually want to use squash merges so that finished features land as a single commit on master:
git merge --squash feature_branch
That doesn't actually merge it creates the squashed changes as modified files in my index. I then have to commit those index changes yet I have disabled commits to master.
Is there a way to prevent commits to master and also ensure work merged from feature branches is squashed automatically?