Codex 完成後,要決定能否合併,應分別看分支裡已提交的程式碼,以及工作目錄內尚未提交的改動。Yenpo 可保留提交比較,同時讓你閱讀目前檔案。
準備 Yenpo 和包含工作成果的本機儲存庫。以下用 codex/search-fix 當範例分支,請將它和 main 換成實際名稱。
1. 開啟 Codex 真正修改的目錄
Codex 可能使用獨立 worktree,而且處於 detached HEAD,沒有分支名稱。要看未提交檔案,應在 Yenpo 開啟那個 worktree。OpenAI 的 worktree 文件說明了這種工作方式。
在任務的工作目錄中執行:
git rev-parse --show-toplevel
git branch --show-current
git rev-parse HEAD
git status --short
分支名稱空白可能表示 detached HEAD。記下提交 ID;不建立分支也能閱讀本機改動,或用 Yenpo 的「提交」模式查看單一提交。若要使用下方的分支比較,先在 Codex 使用「Create branch here」建立分支,再重新開啟 Yenpo 選擇器。遠端任務的結果先透過平常的 Git 流程取得本機版本。
2. 將分支與 main 比較
- 點擊側邊欄「版本比較…」,切換到「比較」。
- 「舊版本」選「本地分支」中的
main。 - 「新版本」選「本地分支」中的
codex/search-fix(或剛在 Codex 建立的分支)。 - 選「分叉以來」,檢查目標版本在共同祖先之後的改動。
- 確認方向和短提交 ID,再點擊「檢視改動」。
若基準是 origin/main,在「舊版本」選「遠端分支」。這裡是本機的遠端追蹤參照;需要更新基準時,先用平常的 Git 用戶端 fetch,再重新開啟選擇器。
| 想回答的問題 | 比較方式 |
|---|---|
| 分支從 main 分開後增加了什麼? | 分叉以來 |
| 兩個最新提交目前有哪些差別? | 直接比較 |
| 單一提交相對第一父提交改了什麼? | 提交 |
main 在分叉後繼續前進時,直接比較會包含兩側發展的差異。「分叉以來」只顯示目標版本的改動。兩種方式的差別見版本選擇說明。
3. 閱讀並追問已提交的差異
從變更檔案樹開啟檔案,每個行為變化都沿著呼叫端、修改分支與相關測試讀一遍。將游標停在版本行可查看完整 ID。比較會固定在選定提交;Codex 加入提交後,要重新開啟比較。
連接模型後,點擊「讓 AI 審查這次比較」,確認比較附件,再修改草稿:
審查這次比較中,取消、錯誤處理與呼叫端假設是否退化。每個問題都提供觸發輸入或狀態、修改位置、預期與實際行為,以及支持判斷的程式碼引用。區分既有問題與本次引入的問題,說明沒有涵蓋的範圍。
送出後逐一核對引用是否對應所選版本,並確認每個問題的觸發條件確實可能發生。Git 比較對話始終唯讀。
4. 另外檢查尚未提交的內容
返回側邊欄加減號的「改動檔案」。「本地改動」比較目前內容與 HEAD,也可能包含尚未儲存的編輯。新增、修改與刪除的檔案都要看;執行 Git 或測試前,先儲存打算保留的內容。
要區分暫存區與工作目錄,可以執行:
git diff --stat HEAD --
git diff --cached --
git diff --
git ls-files --others --exclude-standard
第一條統計已追蹤檔案相對 HEAD 的淨變化,後兩條分別顯示已暫存與未暫存差異。最後一條列出未追蹤且未被忽略的檔案,內容需要開啟閱讀。暫存與未暫存編輯可能抵消,決定下次提交包含什麼時,不能只看淨差異。
「讓 AI 審查所有改動」會為目前相對 HEAD 的改動準備另一份草稿。這些內容在先前的提交比較之外;若 Codex 沒有提交,工作可能全在這裡。
5. 記錄合併判斷的依據
記下比較 ID、是否檢查未提交檔案、確認的問題,以及實際執行的測試。在準備合併的目錄與版本檢查;本機測試可能執行了固定比較中尚不存在的程式碼。
要求再修一輪後,重看相關比較與本機改動。函式仍不清楚時,可以用自己的模型解釋並核對引用。以單輪任務為單位審查,可參考 Claude Code 工作流程。