Informationen zu Pre-Receive-Hooks
Wenn ein Push vorgenommen wird, wird jedes Skript in einer isolierten Umgebung ausgeführt und kann den Inhalt der Pushs überprüfen. Die Skripts sorgen dafür, dass der Push bei dem Beendigungsstatus 0 akzeptiert und bei einem Beendigungsstatus ungleich 0 abgelehnt wird.
Verwende Pre-Receive-Hooks, um Geschäftsregeln zu erfüllen, Regelüberwachungen durchzusetzen und bestimmte allgemeine Fehler zu verhindern.
Beispiele zur möglichen Verwendungsweise von Pre-Receive-Hooks:
- Lege fest, dass Commit-Mitteilungen einem bestimmtem Muster oder Format folgen, also dass sie beispielsweise eine gültige Ticketnummer enthalten oder eine bestimmte Länge aufweisen.
- Sperre einen Branch oder ein Repository, indem du alle Push-Vorgänge ablehnst.
- Verhindere, dass dem Repository vertrauliche Daten hinzugefügt werden, indem du Schlüsselwörter, Muster oder Dateitypen blockierst.
- Verhindere, dass der Autor eines privaten Repositorys seine eigenen Änderungen mergen kann.
Beispiele für Pre-Receive-Hooks für GitHub Enterprise Server sind im Repository github/platform-samples
enthalten.
Auswirkung auf die Leistung und Workflows
Die Auswirkung auf Entwickler und auf deren Workflows kann erheblich sein und muss sorgsam durchdacht werden. Von Pre-Receive-Hooks, die auf Geschäftsanforderungen basieren und durchdacht implementiert werden, kann die Organisation als Ganzes am meisten profitieren.
Pre-Receive-Hooks können unerwünschte Auswirkungen auf die Leistung von deine GitHub Enterprise Server-Instanz haben und sollten sorgfältig implementiert und überprüft werden.