##masterへpushできなくする
masterブランチ消しちゃった\(^o^)/
みたいな事が往々にしてあるので、
githubのPull Requestみたいに、
手元でマージしなくてもマージ可能な環境では、
developへのpushは禁止にしておくのがいいと思います。
以下のサイトに書かれているようなpre-commitスクリプトを、
そっくりそのままファイル名をpre-pushとすることで、
masterへのpushを禁止することができるようになります。
commitを禁止してても(たぶん)pushで削除はできてしまうので、pushも禁止にしておいた方が確実です(´・_・`)
##push禁止スクリプトを自動でコピーする
ただ、これだけだとコピーするのを忘れた瞬間に終わるので、
clone時に自動でコピーされるようにします。
以下のように.gitconfigに書き、
~/.git_template/hooks/pre-pushに上記のpre-pushスクリプトを置くことで、
自動的にコピーされるようになります。
[init]
templatedir = $HOME/.git_template
作成したpre-pushスクリプトにchmod +xで実行権限を与えるのも忘れないでください。
なお、pre-pushスクリプトは比較的新しいgitじゃないと動かないらしいです(1.8.3.4では動いています)。
そのため、SourceTree等のgitを内蔵しているソフトを利用している場合は、
システムのGitを使うように変更をした方がいいと思います。