add pre-commit hook with code lint