Pull Request(PR/合併請求)
又稱:PR · pull request · 合併請求 · merge request
「我改好了,請你看看要不要收進去」的正式請求。它是一套人對人的審查流程,不是一個指令。
你會在什麼時候遇到它
AI agent 在正式環境裡通常不會把程式碼直接推進主線,而是開一個 PR 等你審。看不懂 PR 頁面,你就不知道自己其實握有否決權,只能被動接受 agent 交出來的東西 —— 這正是 agent 時代最主要的把關動作。
打個比方
像把改好的稿子連同修改痕跡一起送回編輯桌上:編輯看得到你動了哪幾行、可以在旁邊留話、可以要求重改,也可以直接退稿。在通過之前,原稿一個字都不會動。
最小範例
# PR 主要在網站上看,但也可以用 GitHub CLI 在命令列處理:
gh pr list # 目前有哪些 PR 等著處理(要先 gh auth login)
gh pr create --fill # 用目前的分支和 commit 訊息開一個 PR
gh pr diff 123 # 看第 123 號 PR 逐行改了什麼網頁上的 PR 有四塊要看:Files changed(逐行改動)、Checks(自動測試過了沒)、Commits(分成幾次存檔)、Conversation(審查意見)。先看 Checks 再看 Files changed —— 自動測試都沒過,逐行讀也是白讀。
最常搞錯的地方
- 以為 PR 已經把改動套用到主線了。在合併(merge)之前,主線一個字都沒變;PR 只是一份「請求」。
- 看到是 AI 開的 PR 就快速點 Merge。agent 寫的 commit 訊息和 PR 說明通常非常流暢,而流暢度跟正確性完全無關。