Geschützte Branches und erforderliche Statuschecks konfigurieren
Sie können zum Begrenzen von Branch-Änderungen geschützte Branches aktivieren und erforderliche Statuschecks erzwingen, bevor ein Branch in einem Pull Request gemergt wird oder bevor Commits auf einem lokalen Branch per Push-Vorgang an den geschützten Remote-Branch übertragen werden können.
Inhalt dieses Artikels
- Geschützten Branch für ein Repository aktivieren
- Arten von erforderlichen Statuschecks
- Erforderliche Statuschecks aktivieren
Jeder, der über Administratorberechtigungen für ein Repository verfügt, kann Branch-Einschränkungen aktivieren.
Geschützten Branch für ein Repository aktivieren
-
Navigieren Sie in GitHub Enterprise zur Repository-Hauptseite.
-
Under your repository name, click Settings.
-
In the left menu, click Branches.
-
Wählen Sie unter „Protected Branches“ (Geschützte Branches) im Dropdownmenü den Branch aus, den Sie als geschützt markieren möchten.
-
Wählen Sie Protect this branch (Diesen Branch schützen) aus.
-
Klicken Sie auf Save changes (Änderungen speichern).
Arten von erforderlichen Statuschecks
Art des erforderlichen Statuschecks | Einstellung | Merge-Anforderungen | Hinweise |
---|---|---|---|
Streng | Das Kontrollkästchen Require branches to be up-to-date before merging (Aktualität der Branches vor dem Mergen erzwingen) ist aktiviert. | Der Branch muss vor dem Mergen auf dem Stand des Basis-Branches sein. | Dies ist das Standardverhalten für erforderliche Statuschecks. Weitere Builds können erforderlich sein, da Sie den Head-Branch auf den neuesten Stand bringen müssen, nachdem andere Mitarbeiter Pull Requests in den geschützten Basis-Branch gemergt haben. |
Locker | Das Kontrollkästchen Require branches to be up-to-date before merging (Aktualität der Branches vor dem Mergen erzwingen) ist nicht aktiviert. | Der Branch muss vor dem Mergen nicht auf dem Stand des Basis-Branches sein. | Es sind weniger Builds erforderlich, da Sie den Head-Branch nicht auf den neuesten Stand bringen müssen, nachdem andere Mitarbeiter Pull Requests gemergt haben. Statuschecks schlagen nach dem Mergen Ihres Branches möglicherweise fehl, wenn inkompatible Änderungen am Basis-Branch vorliegen. |
Deaktiviert | Das Kontrollkästchen Require status checks to pass before merging (Statuschecks müssen vor dem Mergen bestanden werden) ist deaktiviert . | Für den Branch gelten keine Merge-Einschränkungen. | Wenn die erforderlichen Statuschecks nicht aktiviert sind, können Mitarbeiter den Branch unabhängig von seinem Stand gegenüber dem Basis-Branch jederzeit mergen. Die Wahrscheinlich inkompatibler Änderungen erhöht sich dadurch jedoch. |
Erforderliche Statuschecks aktivieren
-
Navigieren Sie in GitHub Enterprise zur Repository-Hauptseite.
-
Under your repository name, click Settings.
-
In the left menu, click Branches.
-
Wählen Sie unter „Protected Branches“ (Geschützte Branches) im Dropdownmenü den Branch aus, den Sie mit einem erforderlichen Statuscheck markieren möchten.
-
Aktivieren Sie Require status checks to pass before merging (Statuschecks müssen vor dem Mergen bestanden werden).
-
Wählen Sie in der Liste der verfügbaren Statuschecks die Checks aus, die als erforderlich festgelegt werden sollen.
-
Optional wählen Sie Include administrators (Administratoren einbeziehen) aus. This enforces all configured restrictions for repository administrators.
-
Deaktivieren Sie optional Require branches to be up to date before merging (Erzwingen, dass Branches vor dem Mergen aktuell sein müssen). Wenn diese Option ausgewählt ist, wird der Branch mit dem neuesten Code auf dem Basis-Branch getestet.
-
Wählen Sie optional Restrict who can push to this branch (Einschränken, wer Push-Vorgänge an diesen Branch übertragen kann) aus.
-
Suchen Sie die Benutzer oder Teams, die die Berechtigung zum Durchführen von Pushes an den geschützten Branch erhalten sollen, und wählen Sie sie aus.
-
Klicken Sie auf Save changes (Änderungen speichern).
Tip: To successfully merge a pull request into a base branch that has required status checks enabled, the pull request's head branch must be up-to-date with the base branch.