Informationen zu Merge-Warteschlangen
Eine Mergewarteschlange hilft dabei, die Geschwindigkeit zu erhöhen, indem Pull Request-Merges in einem ausgelasteten Branch automatisiert werden und sichergestellt wird, dass der Branch nie durch inkompatible Änderungen unterbrochen wird.
Die Mergewarteschlange bietet die gleichen Vorteile wie der Branchschutz Aktualität von Branches vor dem Mergen erfordern. Es ist jedoch nicht erforderlich, dass Pull Request-Ersteller*innen ihren Pull Request-Branch aktualisieren und auf den Abschluss der Statusüberprüfungen warten, bevor der Merge versucht wird.
Die Verwendung einer Mergewarteschlange ist besonders nützlich für Branches mit einer relativ hohen Anzahl von Pull Requests, die täglich von vielen verschiedenen Benutzer*innen zusammengeführt werden.
Sobald ein Pull Request alle erforderlichen Prüfungen zum Schutz der Branches bestanden hat, kann eine Benutzerin mit Schreibzugriff auf das Repository diesen Pull Request der Warteschlange hinzufügen. Die Mergewarteschlange stellt sicher, dass die Pull Request-Änderungen alle erforderlichen Statusüberprüfungen bestehen, wenn sie auf die neueste Version des Zielbranch und alle Pull Requests angewendet werden, die sich bereits in der Warteschlange befinden.
Eine Mergewarteschlange kann GitHub Actions oder einen eigenen CI-Anbieter verwenden, um erforderliche Überprüfungen für Pull Requests in einer Mergewarteschlange auszuführen. Weitere Informationen finden Sie unter GitHub Actions-Dokumentation. Weitere Informationen zu Mergewarteschlangen findest du unter Verwalten einer Zusammenführungswarteschlange.
Hinzufügen eines Pull Requests zu einer Mergewarteschlange
Hinweis
Du kannst die GitHub CLI verwenden, um einer Mergewarteschlange einen Pull Request hinzuzufügen. Klicke auf die Registerkarte „GitHub CLI“ oben in diesem Artikel, um weitere Informationen zu erhalten.
-
Navigieren Sie auf GitHub zur Hauptseite des Repositorys.
-
Klicke unter dem Namen deines Repositorys auf Pull requests.

-
Klicke in der Liste „Pull Requests“ auf die Pull-Anfrage, die du zur Zusammenführungs-Warteschlange hinzufügen möchtest.
-
Klicke auf Zusammenführen, wenn bereit, um den Pull Request zur Warteschlange zum Zusammenführen hinzuzufügen. Als Administrator hast du alternativ folgende Möglichkeit:
- Führen Sie die Pull Request direkt zusammen, indem Sie die Option Zusammenführen aktivieren, ohne auf die Erfüllung der Anforderungen zu warten (unter Umgehung des Branchschutzes), sofern die Branchschutz-Einstellungen dies zulassen, und folgen Sie dem Standardablauf.

Hinweis
Du kannst auf Merge when ready klicken, wenn du bereit bist, deine vorgeschlagenen Änderungen zu mergen. GitHub fügt die Pull-Anfrage automatisch der Mergewarteschlange hinzu, sobald die Bedingungen für die erforderliche Genehmigung und Statusüberprüfung erfüllt sind.
-
Um zu bestätigen, dass du den Pull Request der Mergewarteschlange hinzufügen möchtest, klicke auf „Zusammenführen bestätigen, wenn bereit“.
Mit GitHub CLI kannst du den Befehl gh pr merge verwenden, um einer Mergewarteschlange einen Pull Request hinzuzufügen. Wenn du auf einen Branch abzielst, für den eine Mergewarteschlange erforderlich ist, fügt dieser Befehl den Pull Request automatisch der Warteschlange hinzu, sobald die erforderlichen Überprüfungen bestanden sind. Wenn die erforderlichen Überprüfungen nicht bestanden wurden, aktiviert dieser Befehl die automatische Zusammenführung für den Pull Request. Weitere Informationen findest du unter gh pr merge im Handbuch GitHub CLI.
Entfernen eines Pull Requests aus einer Merge-Warteschlange
Um einen Pull Request aus einer Merge-Warteschlange zu entfernen, navigieren Sie zur Seite des Repositorys in Ihre GitHub Enterprise Server-Instance. Du kannst die GitHub CLI nicht verwenden, um einen Pull Request aus einer Merge-Warteschlange zu entfernen.
-
Navigieren Sie auf GitHub zur Hauptseite des Repositorys.
-
Klicke unter dem Namen deines Repositorys auf Pull requests.

-
Klicke in der Liste „Pull Requests“ auf den Pull Request, den du aus einer Mergewarteschlange entfernen möchtest.
-
Klicke auf Aus Warteschlange entfernen, um den Pull Request aus der Warteschlange zu entfernen.

Alternativ können Sie zur Seite der Merge-Warteschlange für den Basis-Branch navigieren, neben dem Pull Request, den Sie entfernen möchten, auf ... klicken und anschließend Aus Warteschlange entfernen auswählen. Für Informationen dazu, wie Sie zur Seite der Mergewarteschlange für den Basis-Branch gelangen, siehe den nachstehenden Abschnitt.
Anzeigen von Zusammenführungswarteschlangen
In GitHub kann die Zusammenführungswarteschlange für einen Basisbranch an verschiedenen Orten angezeigt werden. Du kannst die GitHub CLI nicht verwenden, um eine Zusammenführungswarteschlange anzuzeigen.
Die Mergewarteschlange für einen Basis-Branch kann an verschiedenen Stellen auf GitHub angezeigt werden.
-
Auf der Seite Branches für das Repository. Diese Route empfiehlt sich, wenn du nicht über einen Pull Request in einer Warteschlange verfügst oder keine Informationen zu einem Pull Request hast, der sich bereits in einer Warteschlange befindet, und ermitteln möchtest, was die Warteschlange enthält. Weitere Informationen finden Sie unter Branches in Deinem Repository anzeigen.

-
Wenn die Mergewarteschlange zum Zusammenführen benötigt wird, scrolle auf der Seite „Pull Requests“ ganz nach unten in der Zeitachse und klicke auf den Link Mergewarteschlange.

-
Die Merge-Ansicht der Warteschlange zeigt die Pull Requests, die sich derzeit in der Warteschlange befinden, wobei deine Pull Requests klar markiert sind.

Verstehen, warum Ihr Pull Request aus der Merge-Queue entfernt wurde
Wenn ein Pull Request mit der neuesten Version des Zielbranch und den vorhergehenden Änderungen in der Warteschlange gruppiert wurde und die erforderlichen Statusprüfungen fehlgeschlagen sind oder Konflikte mit dem Basisbranch bestehen, wird der Pull Request aus der Warteschlange entfernt. In der Zeitachse des Pull Requests wird angezeigt, warum der Pull Request aus der Warteschlange entfernt wurde.
Es gibt eine Reihe von Gründen, warum ein Pull Request aus einer Mergewarteschlange entfernt wird:
- Der konfigurierte CI-Dienst meldet Testfehler für eine Mergegruppe.
- Beim Warten auf ein erfolgreiches CI-Ergebnis ist basierend auf der konfigurierten Timeouteinstellung ein Timeout aufgetreten.
- Eine Benutzerin fordert eine Entfernung über die API oder die Schnittstelle der Mergewarteschlange an.
- Fehler beim Branchschutz, der nicht automatisch behoben werden konnte