Codeausschnitt aus .pre-commit-config.yaml. Ich habe pre_commit_hooks als lokales Modul installiert, konfiguriert
Code: Select all
- repo: local
hooks:
- id: trailing-whitespace
name: Trim trailing-whitespace
language: python
entry: python3 -m pre_commit_hooks.trailing_whitespace_fixer
additional_dependencies: [pre_commit_hooks]
- Wenn ich das Verzeichnis lösche, das die Hooks enthält (die Repository mit den Hooks-Dateien), Pre-Commit führt die Hooks immer noch erfolgreich aus.
- Ich habe versucht, den Cache mit Pre-Commit Clean zu leeren und sogar den Cache-Ordner manuell gelöscht (z. B. ~/.cache/pre-commit/), aber die Hooks laufen immer noch ohne Probleme.
Meine Fragen:
- Wie ist Pre-Commit in der Lage, die Hooks nach der Quelle zu finden und auszuführen? Verzeichnis gelöscht?
- Wie kann ich sicherstellen, dass Pre-Commit die Hooks nicht mehr ausführt, wenn das Quellverzeichnis gelöscht wird?
- Pre-Commit-Cache geleert:
- Pre-Commit-Clean ausgeführt und das Cache-Verzeichnis manuell entfernt (z. B. ~/.cache/pre-commit).
- Überprüft, ob das Cache-Verzeichnis vorhanden war leer.
- Git-Hooks entfernt:
- .git/hooks/ auf verbleibende Skripte überprüft und gelöscht das Pre-Commit-Skript.
- Verifizierte Konfiguration:
- Die Datei .pre-commit-config.yaml wurde vorübergehend entfernt und wie erwartet konnte Pre-Commit nicht ausgeführt werden.
- Inspizierte Pre-Commits Verhalten:
Pre-Commit run --verbose ausgeführt, um die Ausführung zu verfolgen, aber keine nützlichen Informationen darüber gefunden, woher die Hooks stammen .