Pre-Commit mit UV aufsetzen

Was ist pre-commit?

Ein Framework, das Git-Hooks automatisch vor jedem git commit ausführt. Checks wie Linting, Formatting und Whitespace-Bereinigung laufen automatisch auf den geänderten Dateien. Schlägt ein Hook fehl, wird der Commit abgelehnt — man fixt, staged erneut und committet nochmal.

Nutzen

Setup in einem UV-Repository (Schritt für Schritt)

1. Dev-Dependencies hinzufügen

In pyproject.toml:

[dependency-groups]
dev = [
    "pre-commit>=4.2.0",
    "pre-commit-hooks>=5.0.0",
    "ruff>=0.15.2",
]

2. Dependencies installieren

uv sync

3. Config-Datei erstellen

.pre-commit-config.yaml im Projekt-Root ablegen (siehe Template unten).

4. Git-Hook registrieren

uv run pre-commit install

5. Testen

uv run pre-commit run --all-files    # alle Dateien prüfen
uv run pre-commit run                # nur staged Dateien