add pre-commit hook