Pre-Commit: Ein unverzichtbares Tool zur Code-Qualitätssicherung

  • 1. Januar 1

Was ist Pre-Commit?

pre-commit ist ein Open-Source-Tool, das Git-Hooks nutzt, um vor dem Festschreiben von Änderungen bestimmte Prüfungen und Formatierungen durchzuführen. Entwickler können damit sicherstellen, dass ihr Code bestimmten Standards entspricht, bevor er in das Repository gelangt. Beispiele für solche Checks sind Code-Linting, Formatierung oder Sicherheitschecks.

Vorteile von Pre-Commit

Die Nutzung von pre-commit bietet eine Reihe von Vorteilen:

  • Früherkennung von Problemen: Probleme werden bereits lokal erkannt, bevor der Code ins Repository übertragen wird.
  • Konsistenter Code-Stil: Durch automatische Formatierungen bleibt der Code-Stil einheitlich.
  • Zeiteinsparung: Fehlerhafte Commits werden vermieden, was die Notwendigkeit für spätere Code-Reviews und Korrekturen reduziert.

Einrichtung von Pre-Commit

Die Einrichtung von pre-commit ist einfach und erfordert nur wenige Schritte. Zuerst muss pre-commit installiert werden:

pip install pre-commit

Danach wird die Konfigurationsdatei .pre-commit-config.yaml im Wurzelverzeichnis des Projekts angelegt. Die folgende Beispielkonfiguration zeigt gängige Checks:

---
repos:
- repo: https://github.com/pre-commit/pre-commit-hooks
    rev: v4.3.0
    hooks:
    - id: trailing-whitespace
    - id: end-of-file-fixer
    - id: check-yaml
    - id: check-added-large-files
    - id: check-xml  # Überprüft XML-Dateien auf korrekte Syntax
    

Diese Konfiguration führt verschiedene Checks aus, wie das Entfernen überflüssiger Leerzeichen, die Sicherstellung einer korrekten Dateiende und Validierung von XML-Dateien.

Nachdem die Konfiguration erstellt wurde, kann sie mit dem Befehl pre-commit install aktiviert werden. Pre-commit wird dann automatisch bei jedem Commit ausgeführt.

Unterschied zwischen Pre-Commit und CI/CD

Pre-commit und CI/CD-Tools wie GitHub Actions oder Jenkins verfolgen das gleiche Ziel: die Code-Qualität sicherzustellen. Der Unterschied liegt in der Art und Weise und im Zeitpunkt ihrer Ausführung:

  • Pre-Commit: Läuft lokal und stoppt fehlerhafte Commits bevor sie ins Repository gelangen.
  • CI/CD: Läuft nach dem Push im Repository und überprüft den Code zentral für das gesamte Team.

Die Kombination aus pre-commit und CI/CD bietet maximale Codequalität, indem sie Fehler frühzeitig lokal und später auch zentral abfängt.

Fazit

Pre-commit ist ein leistungsstarkes Tool, das durch frühzeitige Prüfung und Formatierung die Codequalität erheblich verbessert. Es reduziert Fehler und spart Zeit, indem es Konsistenz sicherstellt und Fehler frühzeitig erkennt. Eine gute Ergänzung zu zentralen CI/CD-Systemen, um qualitativ hochwertigen Code in Teams zu gewährleisten.

comments powered by Disqus

Ähnliche Artikel

Managed Server

Dein eigener Server, von Experten betreut

Wenn ein Webhosting-Paket oder virtueller Server nicht mehr ausreicht, ist ein Managed Server die beste Wahl. Er kombiniert die enorme Rechenleistung eines dedizierten Systems mit dem Komfort eines Managed Services. Das bedeutet: Du nutzt die volle Power eines echten Servers, aber du musst ihn nicht selbst konfigurieren, updaten oder absichern.

Weiterlesen

Monitoring & Observability

Warum unsere Lösung wählen?

Gewährleisten Sie maximale Verfügbarkeit und Leistung in Ihrer gesamten IT-Infrastruktur.

Weiterlesen