Wprowadzenie do punktów zaczepienia usługi Git
Ciągłe dostarczanie wymaga znacznego poziomu automatyzacji. Nie można stale dostarczać, jeśli nie masz bazy kodu jakości. To jest miejsce, w którym git taryfy tak dobrze.
Pozwala to zautomatyzować większość kontroli w bazie kodu. Przed zatwierdzeniem kodu w repozytorium lokalnym, nie mówiąc już o zdalnym.
Elementy zaczepienia usługi Git
Haki git to mechanizm, który umożliwia uruchamianie kodu przed określonymi zdarzeniami cyklu życia usługi Git lub po nim.
Można na przykład podłączyć zdarzenie commit-msg, aby sprawdzić, czy struktura komunikatów zatwierdzenia jest zgodna z zalecanym formatem.
Haki mogą być dowolnym kodem wykonywalny, w tym powłoką, programem PowerShell, językiem Python lub innymi skryptami. Mogą też być plikiem wykonywalnym binarnym. Wszystko idzie!
Jedynymi kryteriami są to, że haki muszą być przechowywane w folderze .git/hooks w katalogu głównym repozytorium. Ponadto muszą być nazwane, aby były zgodne z powiązanymi zdarzeniami (Git 2.x):
- applypatch-msg
- wstępnego stosowania
- po zastosowaniu
- wstępne zatwierdzenie
- prepare-commit-msg
- commit-msg
- po zatwierdzeniu
- pre-rebase
- po wyewidencjonowania
- po scaleniu
- pre-receive
- update
- po odebraniu
- po aktualizacji
- pre-auto-gc
- po ponownym zapisie
- wstępne wypychanie
Praktyczne przypadki użycia elementów zaczepienia usługi Git
Ponieważ haki git wykonują skrypty dla określonego typu zdarzenia, na którym są wywoływane, możesz wykonać wiele czynności za pomocą punktów zaczepienia usługi Git.
Niektóre przykłady użycia punktów zaczepienia do wymuszania zasad, zapewniania spójności i kontrolowania środowiska:
- W wymuszaniu warunków wstępnych do scalania
- Weryfikowanie skojarzenia identyfikatora elementu roboczego w komunikacie o zatwierdzeniu
- Uniemożliwianie zespołowi zatwierdzania wadliwego kodu
- Wysyłanie powiadomień do pokoju rozmów zespołu (Teams, Slack, HipChat itp.)
W następnej lekcji zobaczysz, jak zaimplementować narzędzia Git Hooks.