Statusüberprüfungen zeigen an, ob Commits die für ein Repository festgelegten Bedingungen erfüllen. Sie werden in der Regel von externen Systemen erstellt, z. B. fortlaufende Integrationsbuilds, Tests, Codeüberprüfungen oder Bereitstellungsprüfungen.
Statusprüfungen helfen Prüfern und Betreuern zu verstehen, ob eine Pullanforderung zum Zusammenführen bereit ist. Eine Überprüfung kann zeigen, dass die Arbeit noch ausgeführt wird, dass Änderungen die Überprüfung bestanden haben oder dass etwas Aufmerksamkeit erfordert.

Personen mit Schreibberechtigungen für ein Repository können den Zustand für Statusprüfungen im Repository festlegen.
Wenn Statusprüfungen für eine geschützte Verzweigung erforderlich sind, müssen sie übergeben werden, bevor die Pullanforderung zusammengeführt werden kann. Siehe Informationen zu geschützten Branches.
Hinweis
Der Status eines übersprungenen Auftrags wird als „Success“ angezeigt. Die Zusammenführung eines Pull Requests wird dadurch nicht verhindert, selbst wenn es sich um eine erforderliche Überprüfung handelt.
Typen von Statusüberprüfungen GitHub
Es gibt zwei Arten von Statusüberprüfungen GitHub:
| Typ | Detailebene | Erstellt von |
|---|---|---|
| Prüfungen | Detaillierte Ausgabe, Anmerkungen und Nachrichten. | |
| GitHub Apps, einschließlich GitHub Actions. | ||
| Commitstatus | Ein einfacherer Status für einen Commit. | Externe Dienste und Integrationen. |
Hinweis
GitHub Actions generiert Überprüfungen, keine Commit-Status, wenn Workflows ausgeführt werden.
Organisationsbesitzer und Benutzer mit Pushzugriff auf ein Repository können Überprüfungen und Commit-Status mit GitHubder API erstellen. Siehe REST-API-Endpunkte für Prüfungen und REST-API-Endpunkte für Commit-Status.
Prüfungen
Prüfungen können Buildprotokolle, Testergebnisse, Anmerkungen und Links zu weiteren Details enthalten. In einer Pullanforderung hilft Ihnen die Registerkarte "Prüfungen ", zu verstehen, welche Überprüfungen ausgeführt wurden und warum eine Überprüfung bestanden oder fehlgeschlagen ist.

Hinweis
Die Registerkarte "Prüfungen " wird nur für Pullanforderungen aufgefüllt, wenn Sie Überprüfungen einrichten, keine Commit-Status für das Repository.
Wenn ein Häkchen auf eine bestimmte Zeile zeigt, können Details auch auf der Registerkarte "Dateien " der Pullanforderung angezeigt werden. Dadurch können Prüfer automatisiertes Feedback mit dem geänderten Code verbinden.
Prüfungen für einzelne Commits anfordern und überspringen
Bei einigen Repositorys können Überprüfungen übersprungen oder für einzelne Commits angefordert werden. Dies kann hilfreich sein, wenn eine Prüfung für eine bestimmte Änderung nicht relevant ist oder wenn Prüfungen nicht automatisch angefordert werden.
Bei GitHub Actions Workflows können Sie workflowausführungen überspringen, die von den push Ereignissen pull_request ausgelöst werden, indem Sie eine Skip-Anweisung in Ihre Commit-Nachricht einschließen. Siehe Überspringen von Workflowausführungen.
Alternativ kannst du eine der folgenden Trailer-Zeilen am Ende deiner Commitnachricht hinzufügen, um alle Überprüfungen für deinen Commit zu überspringen oder anzufordern.
-
Um Überprüfungen für einen Commit zu überspringen, gib deine Commit-Nachricht und eine kurze, aussagekräftige Beschreibung deiner Änderungen ein. Füge zwei leere Zeilen nach der Commitbeschreibung und vor dem schließenden Anführungszeichen hinzu, gefolgt von
skip-checks: true:$ git commit -m "Update README > > skip-checks: true" -
Um Überprüfungen für einen Commit anzufordern, geben Sie Ihre Commit-Nachricht und eine kurze, aussagekräftige Beschreibung Ihrer Änderungen ein. Füge zwei leere Zeilen nach der Commitbeschreibung und vor dem schließenden Anführungszeichen hinzu, gefolgt von
request-checks: true:$ git commit -m "Refactor usability tests > > request-checks: true"
Standardmäßig entfernt Git automatisch aufeinander folgende Zeilenumbrüche. Wenn Sie die Commit-Mitteilung genau so belassen möchten, wie Sie sie eingegeben haben, verwenden Sie die --cleanup=verbatim-Option für Ihren Commit. Weitere Informationen findest du in der Git-Dokumentation unter --cleanup=<mode>.
Prüfe Status und Schlussfolgerungen
Überprüft, wie sie ausgeführt werden, durch die Status, und erhält dann eine Schlussfolgerung, wenn sie fertig sind. Einige Status können nicht manuell festgelegt werden und sind reserviert für GitHub Actions.
| Status | Description |
GitHub Actions nur? |
| --- | --- | --- |
| completed | Die Überprüfung ist abgeschlossen und hat eine Schlussfolgerung (siehe unten). | No |
| expected | Die Überprüfungsausführung wartet darauf, dass ein Status gemeldet wird. | Ja |
| failure | Der Prüflauf ist fehlgeschlagen. | No |
| in_progress | Die Überprüfung wird ausgeführt. | No |
| pending | Die Überprüfungsausführung befindet sich am Anfang der Warteschlange, aber das gruppenbasierte Parallelitätslimit wurde erreicht. | Ja |
| queued | Der Kontrolllauf wurde in die Warteschlange gestellt. | No |
| requested | Der Prüflauf wurde erstellt, aber nicht in die Warteschlange verschoben. | Ja |
| startup_failure | Die Prüfsuite ist beim Start fehlgeschlagen. Dieser Status gilt nicht für Prüfungsdurchläufe. | Ja |
| waiting | Die Überprüfungsausführung wartet darauf, dass eine Bereitstellungsschutzregel erfüllt ist. | Ja |
Wenn eine Überprüfung den Status completed aufweist, hat sie eine Schlussfolgerung. Ein erfolgreicher Abschluss bedeutet in der Regel, dass die Prüfung die Zusammenführung nicht blockiert. Ein Fehler, Timeout oder eine handlungsrelevante Schlussfolgerung bedeutet in der Regel, dass jemand die Details überprüfen muss, bevor die Pullanforderung zusammenführen kann.
| Fazit | Description |
|---|---|
action_required | Die Überprüfungsausführung hat nach ihrer Beendigung die erforderlichen Aktionen bereitgestellt. Weitere Informationen findest du unter Verwenden der REST-API zur Interaktion mit Überprüfungen. |
cancelled | Der Prüflauf wurde abgebrochen, bevor er abgeschlossen wurde. |
failure | Der Prüflauf ist fehlgeschlagen. |
neutral | Die Überprüfung wurde mit einem neutralen Ergebnis abgeschlossen. Dies wird als Erfolg für abhängige Prüfungen GitHub Actionsbehandelt. |
skipped | Die Überprüfungsausführung wurde übersprungen. Dies wird als Erfolg für abhängige Prüfungen GitHub Actionsbehandelt. |
stale | Der Prüflauf wurde veraltet markiert GitHub , da er zu lange dauerte. |
success | Die Überprüfung wurde erfolgreich ausgeführt. |
timed_out | Der Prüflauf hat ein Timeout erreicht. |
Aufbewahrung von Schecks
GitHub bewahrt Prüfdaten 400 Tage lang auf. Nach 400 Tagen werden die Daten archiviert. 10 Tage nach der Archivierung werden die Daten endgültig gelöscht.
Um einen Pull Request mit Überprüfungen zusammenzuführen, die sowohl erforderlich als auch archiviert sind, musst du die Überprüfungen erneut ausführen.