しおメモ

雑多な技術系ブログです。ニッチな内容が多いです。

git push前にrebaseをリマインドする

あとからコミットメッセージ書きたいとか、rebase前提でとりあえず細かくcommit切りたいときに、雑にtempとかWIPとか書いて忘れそうになるので、hookspre-pushに警告をいれてみることにしました。

やり方

master pushを防ぐのとほぼ同じです。

.git/hooks/pre-pushに書いておくことで、それっぽいコミットメッセージに反応して、pushを中断します。

while read local_ref local_sha1 remote_ref remote_sha1
do
  MESSAGES=`git log --oneline origin/${remote_ref##refs/heads/}..HEAD | awk '{print $2}'`
  if [[ $MESSAGES =~ (WIP|wip|temp|tmp) ]]; then
    echo "💪rebaseしろよな!"
    exit 1
  fi
done

とりあえず、自分を律するスタイルでいってみます。