安裝
gh extension install github/gh-stack適合誰
gh-stack 是一個 GitHub CLI 擴充功能,用來管理疊放的分支和 Pull Request。適合已經在用 GitHub CLI、並且需要把一組有順序的分支當成一條 stack 來推進的人。摘要還寫明安裝擴充功能需要 GitHub CLI v2.0+。
資料提到可以安裝 gh-stack skill,讓 AI 編碼代理了解疊放 PR 以及 gh stack 命令列;但摘錄只寫到「安裝該 skill」,沒有給出第二條安裝命令,因此不要自行補一條未出現的安裝程式。資料沒有給出代理產品名單,不要把它理解成某一家編輯器的獨佔功能。官方說明頁是
https://github.com/github/gh-stack
3 分鐘完成第一次嘗試
官方安裝命令就是摘錄裡的這一條:
gh extension install github/gh-stack
前置:本機已有 GitHub CLI,且版本滿足摘要所說的 v2.0+。這條命令會向本機寫入擴充功能,屬於有副作用的步驟。先確認目前儲存庫和帳號就是你要用來試 stack 的環境,再執行安裝。
安裝後的低風險核對:不要立刻建分支。先確認命令 gh stack 已經能被 CLI 找到。資料把 gh stack init 解釋為「開始一條新 stack,並建立並簽出第一個分支」,這會改工作區,必須先得到確認再執行:
gh stack init
成功訊號:安裝完成後,gh 能識別 stack 子命令;若你確認要開始新 stack,init 之後目前儲存庫出現新的第一條分支,並且稍後能在未提交的 .git/gh-stack 裡看到 JSON 中繼資料。若只是想先看說明,停在安裝成功即可,不要 init。
使用案例
案例一:開始一條新的疊放分支。在已安裝擴充功能的儲存庫裡,確認可以改分支後執行 gh stack init。資料把這寫成建立並簽出第一個分支。摘要還提到隨後可以加層、推送、查看,再提交一組 PR,但摘錄沒有給出這些後續子命令的完整寫法,因此本案例的完成標準只到「第一條分支已建立並簽出」,不要把推送或開 PR 寫成已經可複製的步驟。
案例二:核對 stack 中繼資料落在哪裡,用來理解中斷 rebase 後該看什麼。資料寫明:stack 中繼資料存在 .git/gh-stack,是一份不會提交進儲存庫的 JSON,用來記錄哪些分支屬於哪條 stack 以及順序;中斷 rebase 的狀態另存在 .git/gh-stack-rebase-state。這是唯讀檢查:開啟這兩個路徑,確認檔案是否存在以及 JSON 是否在追蹤目前分支順序。不要手改這些檔案,除非同一頁另有步驟;摘錄沒有給出編輯格式。
使用界線
擴充功能只涵蓋疊放分支與 Pull Request 的管理。中繼資料在 .git/gh-stack,不進版本庫;rebase 中斷狀態在 .git/gh-stack-rebase-state。init 會建立並簽出分支,不是唯讀命令。
不要編造未出現在摘錄裡的 skill 安裝命令,也不要把摘要裡的加層、推送、查看、提交理解成已經給出的子命令清單。資料沒有寫用戶端名單,也沒有寫如何在非 GitHub CLI 環境使用。超出這些已寫明的安裝、init 與中繼資料位置,這份說明涵蓋不到。