Skip to main content

Festlegen von Schwellenwerten für die Codequalität für Pullanforderungen

Erzwingen Sie Ihre Codequalitätsstandards automatisch, indem Sie Pullanforderungen blockieren, die unter die von Ihnen festgelegten Schwellenwerte auf Repository- oder Organisationsebene fallen.

Wer kann dieses Feature verwenden?

Repositorybesitzer, Organisationsbesitzer und Benutzer mit der Administratorrolle

GitHub Team oder GitHub Enterprise Cloud

Sie können Pullanforderungen blockieren, die Ihre Codequalitätsstandards nicht erfüllen, indem Sie einem Regelsatz Schwellenwerte hinzufügen Code Quality . Wenn eine Pullanforderung keinen Schwellenwert erfüllt, kann sie nicht zusammengeführt werden.

Sie können Schwellenwerte für Folgendes festlegen:

  • CodeQLErgebnisse, nach dem niedrigsten Schweregrad der Ergebnisse, deren Behebung Sie verlangen.
  • Codeabdeckung durch den Mindestprozentsatz des Codes, der von Tests abgedeckt werden muss.

Sie können diese Schwellenwerte auf Repositoryebene oder auf Organisationsebene erzwingen, um den gleichen Standard in vielen Repositorys gleichzeitig anzuwenden. Wählen Sie die Organisationsebene aus, wenn Sie eine einheitliche Qualitätsleiste für alle Teams benötigen, und die Repositoryebene, wenn ein einzelnes Projekt einen eigenen Standard benötigt. Code Quality KI-Erkennungen können nicht als Schwellenwert festgelegt werden.

Voraussetzungen

Hinweis

Der Schwellenwert wirkt sich nur aus, wenn das Repository Code in einer oder mehreren der unterstützten Sprachen aufweist, siehe Aktivieren von GitHub Code Quality.

Erfolgreiche Ausführung von Code Quality für Pull Requests bestätigen

Bevor Sie ein Regelsatz hinzufügen oder aktualisieren, um einen Schwellenwert Code Qualityeinzuschließen, vergewissern Sie sich, dass der Codequalität Workflow ausgeführt wird, und melden Sie Ergebnisse an Pullanforderungen zurück. Andernfalls könnte das Regelset das Zusammenführen aller Pullanforderungen blockieren.

  1. Öffnen Sie eine aktuelle Pull Request und scrollen Sie zur Zusammenfassung der "Prüfungen" ganz unten in der Pull Request.
  2. Vergewissern Sie sich, dass die „CodeQL – Codequalität“-Prüfung erfolgreich ausgeführt wurde und ihren Status gemeldet hat.

Weitere Informationen finden Sie unter CodeQL-basierte Analyse für Codequalität.

Hinzufügen oder Aktualisieren eines Regelsatzes, um Code Quality einzuschließen

Mit den folgenden Schritten erstellen oder aktualisieren Sie ein Regelsatz auf Repositoryebene. Wenn Sie denselben Schwellenwert gleichzeitig für mehrere Repositorys erzwingen möchten, erstellen Sie stattdessen einen Regelsatz auf Organisationsebene mit derselben Regel Ergebnisse zur Codequalität erforderlich machen. Weitere Informationen findest du unter Erstellen von Regelsätzen für Repositorys in deiner Organisation.

  1. Navigieren Sie zur Registerkarte "Einstellungen" Ihres Repositorys.
  2. Erweitern Sie in der linken Seitenleiste unter „Code und Automatisierung“ Regeln und klicken Sie dann auf Regelsätze.
  3. Wenn Sie noch nicht über ein Regelset zum Schutz Ihrer Standardverzweigung verfügen, erweitern Sie Neues Regelset, und klicken Sie auf "Neue Verzweigungsregelset". Öffnen Sie alternativ Ihren vorhandenen Regelsatz für den Standardzweig und gehen Sie zu Schritt 5 über.
  4. Wenn Sie ein neues Regelset erstellen:
    • Definieren Sie einen Namen für den Regelsatz.
    • Legen Sie den "Erzwingungsstatus" auf "Aktiv" fest.
    • Fügen Sie unter "Zielverzweigungen" ein Ziel von "Standardverzweigung einschließen" hinzu.
  5. Aktivieren Sie unter „Verzweigungsregeln“ das Kontrollkästchen „Ergebnisse zur Codequalität anfordern“.
  6. Legen Sie "Schweregrad" fest, um den niedrigsten Schweregrad von Codequalitätsergebnissen zu definieren, die aufgelöst werden müssen, bevor eine Pullanforderung in die Standardverzweigung zusammengeführt werden kann. Beispiel:
    • Setzen Sie "Fehler", um Pull-Requests mit ungelösten Codequalitätsfehlern von der Zusammenführung auszuschließen.
    • Setzen Sie "Warnungen und höher", um Pull-Anfragen, die nicht aufgelöste Code-Qualitätswarnungen oder Fehler enthalten, am Zusammenführen zu hindern.
    • Legen Sie „Notizen und höher“ fest, um die Zusammenführung von Pullanforderungen mit nicht aufgelösten Notizen zur Codequalität, Warnungen oder Fehlern zu blockieren.
    • Legen Sie "Alle" fest, um Pullanforderungen mit allen nicht aufgelösten Codequalitätsergebnissen zu blockieren, die zusammengeführt werden.
  7. Wenn Sie die Definition oder Bearbeitung des Regelsets abgeschlossen haben, klicken Sie auf "Änderungen erstellen " oder "Speichern".

Festlegen eines Codeabdeckungsschwellenwerts

Sie können auch Pullanforderungen blockieren, die unter einen Codeabdeckungsschwellenwert fallen. Dies verwendet eine separate Regel Codeabdeckung einschränken, nicht die oben verwendete Regel Ergebnisse zur Codequalität erforderlich, und Ihr Repository muss zunächst Codeabdeckungsdaten hochladen. Die vollständige Vorgehensweise finden Sie unter Festlegen von Schwellenwerten für die Codeabdeckung für Pullanforderungen.

Nächste Schritte

Erfahren Sie, wie GitHub Code Quality bei Pull-Requests wirkt, um zu verhindern, dass Probleme mit der Codequalität in Ihren Standardzweig gelangen. Weitere Informationen findest du unter Verhindern, dass Probleme mit der Codequalität Ihren Standard-Branch erreichen.