Diese Version von GitHub Enterprise wurde eingestellt am 2021-09-23. Es wird keine Patch-Freigabe vorgenommen, auch nicht für kritische Sicherheitsprobleme. Für eine bessere Leistung, verbesserte Sicherheit und neue Features nimm ein Upgrade auf die neueste Version von GitHub Enterprise vor. Wende Dich an den GitHub Enterprise-Support, um Hilfe beim Upgrade zu erhalten.

Informationen zu Pre-Receive-Hooks

Pre-Receive-Hooks sind Skripts, die auf der GitHub Enterprise Server-Appliance ausgeführt werden, die Sie zum Implementieren von Qualitätsprüfungen verwenden können.

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.

Nutzungsszenarien

Verwenden Sie 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:

  • Legen Sie 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.
  • Sperren Sie einen Branch oder ein Repository, indem Sie alle Push-Vorgänge ablehnen.
  • Prevent sensitive data from being added to the repository by blocking keywords, patterns or file types.
  • Verhindern Sie, dass der Autor eines privaten Repositorys seine eigenen Änderungen mergen kann.

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 your GitHub Enterprise Server instance haben und sollten sorgsam implementiert und überprüft werden.