Was macht setup-pre-commit?
Richte Husky Pre-Commit-Hooks mit lint-staged (Prettier), Typprüfung und Tests im aktuellen Repository ein. Verwende dies, wenn der Benutzer Pre-Commit-Hooks hinzufügen, Husky einrichten, lint-staged konfigurieren oder Formatierung/Typprüfung/Tests beim Commit einführen möchte.
Konfigurationsdatei
Die Konfiguration wird in deiner package.json vorgenommen.
Wichtige Felder:
{
"husky": {
"hooks": {
"pre-commit": "lint-staged && tsc --noEmit && npm test"
}
},
"lint-staged": {
"*.{js,ts,jsx,tsx}": "prettier --write"
}
}
Erklärung:
husky.hooks.pre-commit: Führelint-stagedaus, danntsc --noEmit(TypeScript-Typprüfung ohne Ausgabe), dannnpm test(führe Tests aus).lint-staged."*.{js,ts,jsx,tsx}": Wende Prettier auf alle JavaScript/TypeScript-Dateien an, die für den Commit bereitgestellt werden.
Schritte zur manuellen Einrichtung
Falls keine automatische Einrichtung erfolgt, führe diese Schritte aus:
-
Installiere Abhängigkeiten:
npm install --save-dev husky lint-staged prettier -
Füge die Pre-Commit-Hook-Konfiguration in deine
package.jsonein (siehe oben). -
Teste den Hook:
git add . && git commit -m "Test pre-commit hooks"
Jetzt werden bei jedem Commit automatisch Prettier-Formatierung, TypeScript-Typprüfung und Tests ausgeführt.