add precommit hook