0Pricing
Git & GitHub Professional Workflow · Lezione

Condividere gli hook con Husky

Impari a condividere gli hook di Git all’interno del team usando Husky, così che tutti eseguano automaticamente gli stessi controlli.

Condividere gli hook con Husky è una lezione Git & GitHub Professional Workflow gratuita su CoddyKit. Questa è la lezione 4 di 4. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento Git & GitHub Professional Workflow, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso Git & GitHub Professional Workflow include 4 lezioni in totale.

Il problema degli hook nativi

Gli hook nativi di Git si trovano in .git/hooks, che non viene incluso nei commit del repository. Di conseguenza, i colleghi non ricevono automaticamente i vostri hook.

Che cos'è Husky

Husky è uno strumento molto usato che memorizza gli hook nel repository e li installa per tutti, così l'intero team esegue gli stessi controlli.

Installazione di Husky

Aggiungete Husky come dipendenza di sviluppo in un progetto Node.js.

npm install --save-dev husky

Inizializzazione di Husky

Il comando init configura la directory .husky e imposta Git affinché la utilizzi.

npx husky init

Come Husky reindirizza gli hook

Husky imposta core.hooksPath di Git in modo che punti alla cartella .husky inclusa nel repository, anziché a .git/hooks.

git config core.hooksPath .husky

Aggiunta di un hook pre-commit

Create un file .husky/pre-commit che esegua il comando di lint o di test prima di ogni commit.

echo 'npm test' > .husky/pre-commit

Commit dell'hook

Poiché .husky si trova nel repository, potete inserirlo nel commit come qualsiasi altro file. I colleghi lo riceveranno al prossimo pull.

git add .husky/pre-commit
git commit -m 'Add pre-commit test hook'

Esecuzione dei linter sui file in staging

Usate Husky insieme a lint-staged per controllare solo i file che avete effettivamente aggiunto allo staging, mantenendo rapidi i commit.

npm install --save-dev lint-staged

Configurazione di lint-staged

Definite quale comando deve essere eseguito su ciascun file in package.json.

{
  'lint-staged': {
    '*.js': 'eslint --fix'
  }
}

Un hook commit-msg

Husky può anche applicare regole ai messaggi di commit usando un hook commit-msg con uno strumento come commitlint.

echo 'npx commitlint --edit $1' > .husky/commit-msg

Ignorare gli hook quando necessario

In caso di emergenza potete ignorare gli hook con --no-verify, anche se dovrebbe accadere raramente.

git commit --no-verify -m 'WIP'

Verifica rapida

Verificate la vostra comprensione della condivisione degli hook con Husky.

Riepilogo

Avete imparato a condividere gli hook con Husky:

  • Gli hook nativi in .git/hooks non vengono condivisi
  • Husky memorizza gli hook in una cartella .husky inclusa nel repository
  • Reindirizza core.hooksPath
  • Può essere usato insieme a lint-staged e commitlint per applicare controlli a tutto il team

Domande Frequenti

La lezione «Condividere gli hook con Husky» è gratuita?

Sì — il testo completo di «Condividere gli hook con Husky» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso Git & GitHub Professional Workflow, passa a CoddyKit PRO. Il corso Git & GitHub Professional Workflow include 4 lezioni in totale.

Cosa imparerò in «Condividere gli hook con Husky»?

Impari a condividere gli hook di Git all’interno del team usando Husky, così che tutti eseguano automaticamente gli stessi controlli. Eserciti Git & GitHub Professional Workflow con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.

Ho bisogno di esperienza per iniziare Git & GitHub Professional Workflow?

Non è richiesta alcuna esperienza precedente. Git & GitHub Professional Workflow su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 4 di 4.

Quanto tempo richiede la lezione «Condividere gli hook con Husky»?

La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.

Posso scrivere ed eseguire codice in questa lezione Git & GitHub Professional Workflow?

Sì. Ogni lezione Git & GitHub Professional Workflow include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.

Tutte le lezioni di questo corso

  1. Comprendere gli hook di Git
  2. Hook pre-commit e post-merge
  3. Personalizzazione della configurazione di Git
  4. Condividere gli hook con Husky
← Torna a Git & GitHub Professional Workflow