Skip to main content

Schnellstart für gestapelte Pullanforderungen

Installieren Sie die gh stack Erweiterung in GitHub CLI , und erstellen Sie Ihren ersten Satz von gestapelten Pullanforderungen.

Hinweis

Dieses Feature befindet sich in der öffentlichen Vorschau und kann geändert werden.

Verwenden Sie gestapelte Pullanforderungen, um große Codeänderungen in eine Kette kleinerer abhängiger Pullanforderungen zu unterteilen, die Sie unabhängig überprüfen und zusammenführen können.

Ein Stapel ist eine Reihe von Pullanforderungen im selben Repository, in dem jede Pullanforderung auf die Verzweigung der Pullanforderung darunter ausgerichtet ist und eine geordnete Kette bildet, die in einer einzelnen Verzweigung landet, in der Regel Ihre Hauptzweige. Anstelle einer großen Pullanforderung erhalten Sie eine Reihe kleinerer Pullanforderungen. Da jede Pullanforderung über einen eigenen diff mit Relevanz verfügt, können Teamkollegen jede Ebene unabhängig überprüfen und genehmigen.

Voraussetzungen

  • GitHub CLI (gh) 2.90.0 oder höher und Git 2.20 oder höher.
    • Authentifizieren GitHub CLI mit gh auth login.
  • Ein GitHub Repository, an das Sie pushen können.

Installieren der CLI-Erweiterung

Shell
gh extension install github/gh-stack

Tipp

Um gestapelte Pullanforderungen mit KI-Codierungs-Agents zu verwenden, z GitHub Copilot. B. installieren Sie die gh-stack Fähigkeit.

Shell
gh skill install github/gh-stack

Erstellen des ersten Stapels

  1. Um einen Stapel zu initialisieren, navigieren Sie zu Ihrem Repository, und führen Sie den folgenden Befehl aus. Dadurch wird ein Nachverfolgungseintrag und Ihre erste Verzweigung erstellt.

    Shell
    gh stack init
    

    Sie werden aufgefordert, Ihre erste Verzweigung zu benennen. Standardmäßig verwendet der Stapel die Standardverzweigung Ihres Repositorys (z. B. main) als Trunk, aber ein Stapel kann auf jede Verzweigung abzielen.

  2. Arbeiten Sie wie gewohnt an Ihrer ersten Verzweigung: Schreiben Von Code, Phasenänderungen und Commit.

    # ... write code ...
    git add .
    git commit -m "helpful-commit-message"
    
  3. Wenn Sie bereit für die nächste logische Arbeitseinheit sind, fügen Sie oben im Stapel eine neue Verzweigung hinzu.

    Shell
    gh stack add BRANCH-NAME
    # ... write code ...
    git add .
    git commit -m "Another-helpful-commit-message"
    
  4. Pushen Sie alle Verzweigungen an die Remoteseite.

    Shell
    gh stack push
    
  5. Erstellen Sie Pullanforderungen, und verknüpfen Sie sie als Stapel auf GitHub.

    Shell
    gh stack submit
    

    Jede Pullanforderung wird mit dem richtigen Basiszweig erstellt. Ihre ersten Verzweigungsziele mainund die nächste Verzweigung BRANCH-NAME zielt auf die erste Verzweigung ab. Prüfer sehen nur den Diff für diese Ebene. Die Pullanforderungen werden automatisch als Stapel GitHub miteinander verknüpft, und Sie können deren Reihenfolge sehen und schnell zwischen ihnen navigieren.

  6. Zeigen Sie den Stapel an, und sehen Sie den vollständigen Zustand jederzeit.

    Shell
    gh stack view
    

    Mit diesem Befehl werden alle Verzweigungen, deren Pullanforderungslinks, Status und der aktuellste Commit für jeden angezeigt.

  7. Hiermit gh stack add -Am "MESSAGE" können Sie alle Änderungen, commit ausführen und die nächste Verzweigung in einem Schritt erstellen. Sie benötigen keine separate git add oder git commit. Wenn die aktuelle Filiale noch keine Verpflichtung hat, landet das Commit dort; wenn er bereits Commits hat, wird eine neue Verzweigung erstellt.

    # Commit lands on the current branch
    gh stack add -Am "Auth middleware"
    
    # Current branch already has commits, so this creates the next branch
    gh stack add -Am "API routes"
    
  8. Wenn Sie bereit sind, verschieben Sie alles, und erstellen Sie die Pullanforderungen.

    Shell
    gh stack submit
    

Nächste Schritte