Dele hooks med Husky
Lær hvordan De kan dele Git-hooks på tvers av et team ved hjelp av Husky, slik at alle automatisk kjører de samme kontrollene.
Dele hooks med Husky er en gratis leksjon i DevOps-bootcamp på CoddyKit. Dette er leksjon 4 av 4. Du kan lese valgfritt 3 leksjoner fra denne læringsstien gratis i sin helhet – deretter låser CoddyKit PRO opp alle leksjoner, samt praktisk øving med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt. Den er en del av læringsløpet i DevOps-bootcamp, og fremdriften din synkroniseres mellom nettet og CoddyKit-appen. Kurset i DevOps-bootcamp inneholder totalt 4 leksjoner.
Problemet med innebygde hooks
Innebygde Git-hooks ligger i .git/hooks, som ikke committes til repoet. Det betyr at teammedlemmene ikke får hookene dine automatisk.
Hva er Husky?
Husky er et populært verktøy som lagrer hookene i repoet og installerer dem for alle, slik at hele teamet kjører de samme kontrollene.
Installere Husky
Legg til Husky som en utviklingsavhengighet i et Node.js-prosjekt.
npm install --save-dev huskyInitialisere Husky
init-kommandoen oppretter .husky-mappen og konfigurerer Git til å bruke den.
npx husky initSlik omdirigerer Husky hooks
Husky angir Git-innstillingen core.hooksPath til den committede .husky-mappen i stedet for .git/hooks.
git config core.hooksPath .huskyLegge til en pre-commit-hook
Opprett en .husky/pre-commit-fil som kjører lint- eller testkommandoen din før hver commit.
echo 'npm test' > .husky/pre-commitCommitte hooken
Fordi .husky ligger i repoet, committer du den som enhver annen fil. Teammedlemmene får den ved neste pull.
git add .husky/pre-commit
git commit -m 'Add pre-commit test hook'Kjøre lintere på stagede filer
Kombiner Husky med lint-staged for å bare kontrollere filer du faktisk har staged, slik at commitene forblir raske.
npm install --save-dev lint-stagedKonfigurere lint-staged
Definer hvilken kommando som skal kjøres på hvilke filer i package.json.
{
'lint-staged': {
'*.js': 'eslint --fix'
}
}En commit-msg-hook
Husky kan også håndheve regler for commit-meldinger ved hjelp av en commit-msg-hook med et verktøy som commitlint.
echo 'npx commitlint --edit $1' > .husky/commit-msgHoppe over hooks ved behov
I nødstilfeller kan du hoppe over hooks med --no-verify, men det bør skje sjelden.
git commit --no-verify -m 'WIP'Hurtigsjekk
Test forståelsen din av hvordan hooks deles med Husky.
Oppsummering
Du har lært å dele hooks med Husky:
- Innebygde hooks i
.git/hooksdeles ikke - Husky lagrer hooks i en committet
.husky-mappe - Den omdirigerer
core.hooksPath - Kombiner med lint-staged og commitlint for kontroller som gjelder hele teamet
Lær deg DevOps-bootcamp med en AI-veileder – gratis
Skriv og kjør ekte kode i nettleseren, få umiddelbar hjelp fra en AI-veileder som er tilgjengelig døgnet rundt, og fortsett der du slapp – på nettet eller i appen.
- Kurs
- 142
- Leksjoner
- 568
Ofte stilte spørsmål
Er leksjonen «Dele hooks med Husky» gratis?
Ja – du kan lese valgfritt 3 av leksjonene i læringsstien DevOps-bootcamp, inkludert «Dele hooks med Husky», gratis i sin helhet her på nettet. Deretter låser CoddyKit PRO opp alle leksjoner, samt interaktiv øving med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt. Kurset i DevOps-bootcamp inneholder totalt 4 leksjoner.
Hva lærer jeg i «Dele hooks med Husky»?
Lær hvordan De kan dele Git-hooks på tvers av et team ved hjelp av Husky, slik at alle automatisk kjører de samme kontrollene. Du øver på DevOps-bootcamp med praktisk kode som du kjører direkte i nettleseren, mens en AI-veileder som er tilgjengelig døgnet rundt, svarer på spørsmålene dine mens du jobber deg gjennom leksjonen.
Trenger jeg erfaring for å begynne med DevOps-bootcamp?
Ingen tidligere erfaring er nødvendig. DevOps-bootcamp på CoddyKit er lagt opp for både nybegynnere og viderekomne, så De kan begynne her eller helt fra start og lære i Deres eget tempo. Dette er leksjon 4 av 4.
Hvor lang tid tar leksjonen «Dele hooks med Husky»?
De fleste CoddyKit-leksjoner tar omtrent 5–10 minutter. Hver leksjon er kort og interaktiv, slik at De gjør jevne fremskritt og kan fortsette akkurat der De slapp – både på nettet og i appen.
Kan jeg skrive og kjøre kode i denne DevOps-bootcamp-leksjonen?
Ja. Alle DevOps-bootcamp-leksjoner har en innebygd kodeeditor, slik at De kan skrive og kjøre ekte kode direkte i nettleseren og få umiddelbar tilbakemelding fra AI – uten lokal konfigurering.
Alle leksjonene i dette kurset
- Forstå Git hooks
- Pre-commit- og post-merge-hooks
- Tilpasse Git-konfigurasjonen
- Dele hooks med Husky