Inleiding tot Git-hooks
Continue levering vereist een aanzienlijk automatiseringsniveau. U kunt niet continu leveren als u geen kwaliteitscodebasis hebt. Het is waar git zo goed gaat.
Hiermee kunt u de meeste controles in uw codebasis automatiseren. Voordat u de code doorvoert in uw lokale opslagplaats, laat staan de externe.
Githooks
Git-hooks zijn een mechanisme waarmee code kan worden uitgevoerd vóór of na bepaalde gebeurtenissen van de Git-levenscyclus.
U kunt bijvoorbeeld koppelen aan de commit-msg-gebeurtenis om te controleren of de structuur van het doorvoerbericht de aanbevolen indeling volgt.
De hooks kunnen elke uitvoerbare code zijn, waaronder shell, PowerShell, Python of andere scripts. Of ze kunnen een binair uitvoerbaar bestand zijn. Alles kan!
De enige criteria zijn dat hooks moeten worden opgeslagen in de map .git/hooks in de hoofdmap van de opslagplaats. Ze moeten ook een naam hebben die overeenkomt met de gerelateerde gebeurtenissen (Git 2.x):
- applypatch-msg
- pre-applypatch
- post-applypatch
- vooraf doorvoeren
- prepare-commit-msg
- commit-msg
- na het committeren
- pre-rebase
- post-checkout
- na samenvoegen
- vooraf ontvangen
- bijwerken
- na ontvangst
- post-update
- pre-auto-gc
- na herschrijven
- pre-push
Praktische gebruiksvoorbeelden voor het gebruik van Git-hooks
Omdat Git-hooks scripts uitvoeren op basis van specifieke gebeurtenissen, kunt u er een breed scala aan acties mee uitvoeren.
Enkele voorbeelden van waar u hooks kunt gebruiken om beleid af te dwingen, consistentie te garanderen en uw omgeving te beheren:
- Bij het afdwingen van voorwaarden voor samenvoegen
- Controleren van werkitem-ID-associatie in uw commit-bericht
- Voorkomen dat u & en uw team foutieve code doorvoeren
- Meldingen verzenden naar de chatruimte van uw team (Teams, Slack, HipChat, enzovoort)
In de volgende les ziet u hoe u Git Hooks implementeert.