USAGE

First time setup:

  • pip install pre-commit
  • pre-commit install
  • pre-commit run --all-files # Run on all existing files

Normal usage:

  • Hooks run automatically on git commit
  • Failed hooks prevent the commit
  • Fix issues and commit again

Manual run:

  • pre-commit run --all-files # All hooks on all files
  • pre-commit run black --all-files # Just Black on all files
  • pre-commit run --files app/main.py # All hooks on specific file

Update hooks:

  • pre-commit autoupdate # Update to latest versions

Skip hooks (EMERGENCY ONLY):

  • git commit --no-verify Or skip specific hook:
  • SKIP=black git commit -m "message"

============================================================================== TROUBLESHOOTING

Hook fails with “command not found”:

  • Ensure pre-commit is installed: pip install pre-commit
  • Reinstall hooks: pre-commit install

Hook fails with version mismatch:

  • Update pre-commit: pip install --upgrade pre-commit
  • Clean cache: pre-commit clean
  • Run again: pre-commit run --all-files

Hooks are slow:

  • Use --files to run on specific files
  • Disable expensive hooks during development
  • Re-enable before pushing

Want to bypass temporarily:

  • Use --no-verify flag (not recommended)
  • Better: Fix the issues