程式忍者PGNinja

GitHub Blog

GitHub 推出 gh-stack 讓 AI 產生的大型 PR 變好審查

· GitHub 推出堆疊式拉取請求工具 gh-stack,把 AI 一次生成的龐大程式改動拆成多層,方便人類逐層審查。

這篇文章介紹 GitHub 推出的「堆疊式拉取請求(stacked pull requests)」做法,搭配新的 CLI 工具 gh-stack。背景問題是 AI 代理生成程式碼時,常常把一整個功能塞進單一巨大的 Pull Request,動輒超過一千行,導致人類審查困難、程式碼品質下滑、合併也變慢,而傳統手動拆分鏈式 PR 又很花時間同步。

具體做法是把一個大功能拆成由下而上的多層 PR,每一層只負責單一職責,並依序依賴前一層,例如先建資料模型、再做 API 端點、再串接前端、最後做介面。開發者可以用 gh extension install github/gh-stack 安裝,再用 gh stack init、add、push、submit 等指令建立與推送堆疊;當底層被要求修改時,用 gh stack sync 或介面上的一鍵重新變基按鈕,就能讓上層分支自動級聯更新並解決衝突。

這個做法之所以受到關注,是因為它直接回應了 AI 輔助開發時代的一個新痛點:AI 很會寫程式碼,但寫出來的東西往往太大一包,人類根本來不及審查。透過把審查拆成「由上而下看目標、由下而上驗證每一層」,再搭配每層獨立跑 CI 檢查,等於是把難審查與難維護這兩個互相拉扯的問題同時解決。

這篇文章偏向團隊協作與程式碼審查流程的工程實務,對剛開始學程式的孩子來說操作門檻較高,比較適合已經在用 Git 和 Pull Request 的進階學習者參考。比較值得帶給孩子的觀念是:好的程式不是一次全部寫完丟出去,而是拆成一小步一小步,每一步都清楚在做什麼、也方便別人看懂,這個習慣越早養成越好。

開發工具AI開源

其他新聞