DevOps-bootcamp · leksjon

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.

Leksjon 4 av 413 trinn

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 husky

Initialisere Husky

init-kommandoen oppretter .husky-mappen og konfigurerer Git til å bruke den.

npx husky init

Slik omdirigerer Husky hooks

Husky angir Git-innstillingen core.hooksPath til den committede .husky-mappen i stedet for .git/hooks.

git config core.hooksPath .husky

Legge 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-commit

Committe 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-staged

Konfigurere 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-msg

Hoppe 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/hooks deles 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
Gratis å komme i gang

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

  1. Forstå Git hooks
  2. Pre-commit- og post-merge-hooks
  3. Tilpasse Git-konfigurasjonen
  4. Dele hooks med Husky
← Tilbake til DevOps-bootcamp