Skip to main content
Skip to content

Erstellen von gestapelten Pull Requests

Erstellen Sie einen Stapel abhängiger Pull Requests mithilfe der gh stack Erweiterung in GitHub CLI oder direkt auf GitHub.

Erstellen Sie gestapelte Pull Requests mit der gh stack Erweiterung in GitHub CLI oder auf der GitHub Website.

Hinweis

Gestapelte Pullanforderungen erfordern, dass sich alle Verzweigungen im selben Repository befinden. Kreuzverzweigungsstapel werden nicht unterstützt.

Erstellen eines Stapels mit GitHub CLI

  1. Stack initialisieren. Dadurch wird der erste Branch über Ihrem Trunkzweig erstellt und ausgecheckt.

    Shell
    gh stack init BRANCH-NAME
    
  2. Schreiben Sie Code für die erste Schicht und stagen und committen Sie dann Ihre Änderungen.

    Shell
    git add .
    git commit -m "helpful-commit-message"
    
  3. Fügen Sie einen Branch für die nächste logische Arbeitseinheit hinzu. Die neue Verzweigung wird auf Basis des aktuellen Branches erstellt.

    Shell
    gh stack add BRANCH-NAME
    
  4. Schreiben Sie Code und erstellen Sie einen Commit auf dem neuen Branch. Wiederholen Sie diesen Vorgang für jede zusätzliche Ebene.

  5. Pushen Sie alle Branches an das Remote-Repository, und erstellen Sie die gestapelten Pull Requests auf GitHub.

    Shell
    gh stack submit
    

    Jeder Pull Request wird mit dem richtigen Basis-Branch erstellt, sodass Prüfer nur den Diff für diese Ebene sehen, und die Pull Requests werden automatisch als Stapel verknüpft.

Erstellen eines Stack von der GitHub Website

Sie können einen Stapel ohne CLI erstellen, indem Sie den Basiszweig jedes Pull Requests auf die darunter liegende Verzweigung festlegen.

  1. Erstellen Sie den ersten Pull Request wie gewohnt. In der Regel würde Ihre Basis auf main abzielen.

  2. Erstellen Sie den nächsten Pull Request, und legen Sie seinen Basis-Branch auf den Branch des ersten Pull Requests fest. Wählen Sie die Option „Stapel erstellen“ aus, um die beiden Pull Requests als Stapel zu verknüpfen.

    Nach der Erstellung zeigt der Stapel die Pull Requests an, die miteinander verknüpft sind.

    • Ein Stapelsymbol oben im Pull Request zeigt eine Zahl an, die angibt, welche Schicht Sie anzeigen.
    • Im Merge-Feld wird eine Stack-Map angezeigt. Es zeigt jeden Pull Request im Stapel und seinen Status an und ermöglicht es Ihnen, mit nur einem Klick zu einem beliebigen Layer zu navigieren.
  3. Wiederholen Sie diesen Vorgang für jede zusätzliche Pullanforderung, die auf den Zweig der davorliegenden Pullanforderung ausgerichtet ist.

Umwandeln vorhandener Pull Requests in einen Stapel

Wenn Sie bereits offene Pull Requests haben, deren Branches aufeinander aufbauen, wobei der Basis-Branch jedes Pull Requests der Head-Branch des Pull Requests darunter ist, GitHub erkennt die Kette und zeigt ein Empfehlungsbanner an, das anbietet, sie in einen Stapel umzuwandeln.

  1. Wählen Sie in einem der zulässigen Pull Requests das Banner aus, um ein Dialogfeld zu öffnen, in dem der Stapel angezeigt wird, wobei jeder Pull Request von oben nach unten aufgelistet wird.

  2. Überprüfen Sie die Vorschau und bestätigen Sie, die Pull Requests zu einem Stapel zu verknüpfen.

Nachdem Sie bestätigt haben, wird die Stack-Map in der Kopfzeile jedes Pull Requests angezeigt.

Zu einem vorhandenen Stapel über die GitHub Website hinzufügen

So fügen Sie einem bereits vorhandenen Stack einen neuen Pull Request hinzu:

  1. Öffnen Sie einen beliebigen Pull Request im Stapel, klicken Sie in der Kopfzeile auf , und klicken Sie dann auf Zum Stapel hinzufügen.

  2. Der Basiszweig wird automatisch auf den Head-Branch des obersten Pull Requests festgelegt. Wählen Sie den Head-Branch für Ihren neuen Pull Request aus und dann Pull Request erstellen.

  3. Wählen Sie Add to stack aus, um den Pull Request zu erstellen.

Der neue Pull Request wird oben zum Stack hinzugefügt.

Weiterführende Lektüre