0Pricing
Git & GitHub Professional Workflow · Lekcja

Udostępnianie hooków za pomocą Husky

Dowiedz się, jak udostępniać hooki Git w całym zespole za pomocą Husky, aby wszyscy automatycznie uruchamiali te same kontrole.

Udostępnianie hooków za pomocą Husky to bezpłatna lekcja Git & GitHub Professional Workflow na CoddyKit. To lekcja 4 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej Git & GitHub Professional Workflow, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Git & GitHub Professional Workflow zawiera 4 lekcji w sumie.

Problem z natywnymi hookami

Natywne hooki Git znajdują się w katalogu .git/hooks, który nie jest commitowany do repozytorium. Oznacza to, że członkowie zespołu nie otrzymują automatycznie Państwa hooków.

Czym jest Husky

Husky to popularne narzędzie, które przechowuje hooki w repozytorium i instaluje je u wszystkich, dzięki czemu cały zespół uruchamia te same kontrole.

Instalowanie Husky

Należy dodać Husky jako zależność deweloperską w projekcie Node.js.

npm install --save-dev husky

Inicjowanie Husky

Polecenie init konfiguruje katalog .husky i ustawia Git tak, aby z niego korzystał.

npx husky init

Jak Husky przekierowuje hooki

Husky wskazuje core.hooksPath w Git na commitowany katalog .husky zamiast na .git/hooks.

git config core.hooksPath .husky

Dodawanie hooka pre-commit

Należy utworzyć plik .husky/pre-commit, który przed każdym commitem uruchamia polecenie lintera lub testów.

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

Commitowanie hooka

Ponieważ katalog .husky znajduje się w repozytorium, można commitować go tak jak każdy inny plik. Członkowie zespołu otrzymają go przy następnym pobieraniu zmian.

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

Uruchamianie linterów dla plików przygotowanych do commita

Połącz Husky z lint-staged, aby sprawdzać tylko pliki faktycznie przygotowane do commita i utrzymać krótszy czas wykonywania commitów.

npm install --save-dev lint-staged

Konfigurowanie lint-staged

Należy zdefiniować, które polecenie ma być uruchamiane dla poszczególnych plików w package.json.

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

Hook commit-msg

Husky może również wymuszać reguły dotyczące komunikatów commitów za pomocą hooka commit-msg i narzędzia takiego jak commitlint.

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

Pomijanie hooków w razie potrzeby

W sytuacjach awaryjnych można pominąć hooki za pomocą --no-verify, ale powinno się to zdarzać rzadko.

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

Szybkie sprawdzenie

Sprawdź swoją wiedzę na temat udostępniania hooków za pomocą Husky.

Podsumowanie

Dowiedziałeś się, jak udostępniać hooki za pomocą Husky:

  • Natywne hooki w .git/hooks nie są udostępniane
  • Husky przechowuje hooki w commitowanym katalogu .husky
  • Przekierowuje ustawienie core.hooksPath
  • W połączeniu z lint-staged i commitlint umożliwia stosowanie kontroli w całym zespole

Często zadawane pytania

Czy lekcja „Udostępnianie hooków za pomocą Husky” jest bezpłatna?

Tak — pełny tekst „Udostępnianie hooków za pomocą Husky” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu Git & GitHub Professional Workflow, przejdź na CoddyKit PRO. Kurs Git & GitHub Professional Workflow zawiera 4 lekcji w sumie.

Co nauczysz się w „Udostępnianie hooków za pomocą Husky”?

Dowiedz się, jak udostępniać hooki Git w całym zespole za pomocą Husky, aby wszyscy automatycznie uruchamiali te same kontrole. Ćwiczysz Git & GitHub Professional Workflow z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.

Czy potrzebuję doświadczenia, aby zacząć Git & GitHub Professional Workflow?

Nie wymagamy żadnego doświadczenia. Git & GitHub Professional Workflow w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 4 z 4.

Ile czasu zajmuje lekcja „Udostępnianie hooków za pomocą Husky”?

Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.

Czy mogę pisać i uruchamiać kod w tej lekcji Git & GitHub Professional Workflow?

Tak. Każda lekcja Git & GitHub Professional Workflow zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.

Wszystkie lekcje w tym kursie

  1. Poznajemy Git Hooks
  2. Hooki pre-commit i post-merge
  3. Dostosowywanie konfiguracji Git
  4. Udostępnianie hooków za pomocą Husky
← Powrót do Git & GitHub Professional Workflow