Artikelversion: GitHub.com
Informationen zu erforderlichen Statuschecks
Mithilfe von erforderlichen Statuschecks wird sichergestellt, dass alle erforderlichen CI-Tests bestanden werden, bevor Mitarbeiter Änderungen an einem geschützten Branch vornehmen können.
Geschützte Branches sind verfügbar in öffentlichen Repositorys mit GitHub Free und GitHub Free für Organisationen, und in öffentlichen und privaten Repositorys mit GitHub Pro, GitHub Team, GitHub Enterprise Cloud, und GitHub Enterprise Server. Weitere Informationen findest Du unter „GitHub-Produkte."
Inhalt dieses Artikels
- Informationen zu erforderlichen Statuschecks
- Einstellungen für erforderliche Statuschecks
- Fehlerbehebung von erforderlichen Statuschecks
- Weiterführende Informationen
Were you able to find what you were looking for?
Thank you! Your feedback has been submitted.
Informationen zu erforderlichen Statuschecks
Wenn Du in Deinem Repository Schutzmaßnahmen für Branches erzwungen hast, kannst Du erforderliche Statuschecks einrichten. Weitere Informationen findest Du unter „Geschützte Branches konfigurieren“ und „Erforderliche Statuschecks aktivieren“. Erforderliche Statuschecks können Prüfungen oder Status sein. Weitere Informationen findest Du unter „Über Statuschecks."
Nach der Aktivierung der erforderlichen Statuschecks müssen alle erforderlichen Statuschecks durchlaufen werden, bevor Branches in den geschützten Branch zusammengeführt werden können. Nachdem alle erforderlichen Statuschecks durchlaufen sind, müssen alle Commits entweder in einen anderen Branch übertragen und dann zusammengeführt oder direkt in den geschützten Branch übertragen werden.

Hinweis: Jede Person oder Integration mit Schreibberechtigungen auf ein Repository kann den Zustand von Statuschecks im Repository festlegen. GitHub verifiziert nicht, dass der Autor einer Prüfung autorisiert ist, eine Prüfung mit einem bestimmten Namen zu erstellen oder einen vorhandenen Status zu ändern. Vor dem Zusammenführen eines Pull Request solltest Du überprüfen, dass der Autor jedes im Merge-Feld aufgeführten Status erwartet wird.
Administratoren eines Repositorys können einen geschützten Branch zusammenführen, auch wenn die erforderlichen Statuschecks nicht bestanden wurden oder noch ausstehen. Du kannst verlangen, dass auch für Administratoren erforderliche Statuschecks notwendig sind. Weitere Informationen findest du unter „Erforderliche Statuschecks aktivieren."

Administratoren können einen geschützten Branch zusammenführen, auch wenn der Branch nicht auf dem neuesten Stand des Basisbranches ist.
Einstellungen für erforderliche Statuschecks
Du kannst entweder lose oder strenge Statuschecks einrichten, je nachdem, ob Du vor dem Zusammenführen eine Aktualisierung Deines Branch mit dem Basisbranch verlangen willst. Weitere Informationen findest Du unter „Arten von erforderlichen Statuschecks."
Fehlerbehebung von erforderlichen Statuschecks
Wenn Du eine Prüfung und einen Status mit dem gleichen Namen hast, und Du selektierst diesen Namen als erforderlichen Statuscheck, dann sind sowohl die Prüfung wie auch der Status erforderlich. Weitere Informationen findest Du unter „Prüfungen“ in die GitHub-Entwicklerdokumentation.
Nachdem Du die erforderlichen Statuschecks eingerichtet hast, muss Dein Branch vor dem Zusammenführen auf dem neuesten Stand des Basisbranches sein. Dadurch wird sichergestellt, dass Dein Branch mit dem neuesten Code aus dem Basisbranch getestet wurde. Wenn Dein Branch veraltet ist, musst Du den Basisbranch in Deinen Branch zusammenführen.
Note: Mit Git rebase kannst Du Deinen Branch auch auf den Basisbranch aktualisieren. Weitere Informationen findest Du unter „Informationen zu Git rebase.“

Du kannst lokale Änderungen erst dann an einen geschützten Branch übertragen, wenn alle erforderlichen Statuschecks bestanden sind. Ansonsten erhältst Du eine Fehlermeldung ähnlich der folgenden:
remote: error: GH006: Protected branch update failed for refs/heads/master.
remote: error: Required status check "ci-build" is failing
Hinweis: Pull Requests, die auf dem neuesten Stand sind und die erforderlichen Statuschecks bestehen, können lokal zusammengeführt und an den geschützten Branch übertragen werden. Dies kann ohne Statuschecks erfolgen, die auf dem Merge-Commit selbst ausgeführt werden.
Manchmal werden sich die Ergebnisse der Statuschecks für den Test-Merge-Commit und Head-Commit widersprechen. Wenn der Test-Merge-Commit einen Status hat, muss dieser bestanden werden. Anderenfalls muss der Status des Head-Commit bestanden sein, bevor Du den Branch zusammenführen kannst. Weitere Informationen über Test-Merge-Commits findest Du unter „Pull Requests" in die GitHub-Entwicklerdokumentation.

Weiterführende Informationen
Were you able to find what you were looking for?
Thank you! Your feedback has been submitted.