Skip to content

程式碼審查 ​

本頁是 OpenAI 官方文件 的中文鏡像,譯文由官方維護。以官方頁面為準。

在提交或推送程式碼變更前,使用 ChatGPT 或 Codex 進行檢查。

開始審查 ​

在 ChatGPT Work 中,上傳要審查的程式碼,或透過 已安裝的來源外掛程式提供程式碼。在提示詞中,指明 Pull Request、 分支、提交、檔案及審查準則。

在 App 中審查 ​

開啟審查窗格,以瞭解變更內容、提供針對特定程式碼行的意見, 並決定要暫存、還原、提交或推送哪些變更。

若要請 Codex 審查變更,請在撰寫工具中輸入 /review。選擇 對基底分支進行審查 或 審查未提交的變更。Codex 會回報 依優先順序排列的審查結果,而不會變更你的工作樹。

審查窗格必須搭配位於 Git 程式碼庫中的專案使用。如果專案 還不是 Git 程式碼庫,App 會提示你建立一個。

輸入 /review 以開啟 CLI 審查預設選項。Codex 會啟動專用審查器, 讀取所選差異,並回報依優先順序排列、可採取行動的審查結果, 且不會變更你的工作樹。

在 IDE 擴充功能的撰寫工具中輸入 /review。選擇 對基底 分支進行審查 或 審查未提交的變更。Codex 會回報依優先順序排列的審查結果, 而不會變更你的工作樹。

/review 指令只會在開啟的專案位於 Git 程式碼庫中時顯示。

選擇審查範圍 ​

在提示詞中,指明要檢查的 Pull Request、分支、提交或檔案。若要 審查無法透過已安裝的來源外掛程式取得的本機檔案,請將檔案 上傳至對話。

顯示哪些變更 ​

審查窗格反映的是 Git 程式碼庫的狀態,而不只是 Codex 編輯的內容。其中包括 Codex 所做的變更、你自己所做的變更,以及程式碼庫中 任何其他尚未提交的變更。

預設情況下,審查窗格會顯示 未暫存 的變更。使用 已暫存 檢視 Git 索引、使用 提交 檢視所選提交、使用 分支 檢視與 基底分支的差異,或使用 上一輪 檢視助理最近一輪的變更。

審查多個程式碼庫 ​

當本機專案包含多個資料夾, 且這些資料夾分屬不同的 Git 程式碼庫時,審查窗格可以顯示每個 程式碼庫的變更。在審查標頭中開啟程式碼庫選擇器,即可檢視 另一個程式碼庫,並在不離開 目前審查窗格的情況下查看新增或移除的程式碼行。

選擇 上一輪 ,即可查看所有已附加的 程式碼庫中助理最近所做的變更。此檢視的程式碼庫選擇器會顯示 所有程式碼庫 。其他 審查範圍,例如 未暫存、 已暫存和 分支,適用於 你選擇的程式碼庫。

請選擇下列其中一種 /review 審查範圍:

  • 對基底分支進行審查 會找出合併基底,並審查你的分支差異。
  • 審查未提交的變更 會納入已暫存、未暫存及未追蹤的檔案。
  • 審查提交內容 會審查所選提交的確切變更集。
  • 自訂審查指示 會將審查聚焦於你提供的準則。

請選擇下列其中一種 /review 審查範圍:

  • 對基底分支進行審查 會將目前分支與你選擇的分支進行比較。
  • 審查未提交的變更 會審查工作樹中的變更。

處理審查結果 ​

審查結果會顯示在網頁對話中。你可以要求提供佐證、要求進行 範圍更小的後續審查,或請 ChatGPT 準備修訂後的檔案。

程式碼審查結果 ​

審查結果會以行內註解顯示在審查窗格中。

審查預設在目前的對話中執行。在 設定 > 一般 > 程式碼審查下,選擇 獨立 以啟動另一個審查對話。請參閱 開發人員設定。

審查會在對話記錄中顯示為一個對話回合。將 review_model 設定在 config.toml 中,即可為審查指定與目前 工作階段不同的模型。

審查預設在目前的對話中執行。將 chatgpt.reviewDelivery 設為 detached,即可讓 /review 啟動另一個審查對話。請參閱 IDE 擴充功能設定參考資料。

如果請 ChatGPT 準備修訂後的檔案,對話可用的工具與工作區 權限仍然適用。

如果請 Codex 套用它找到的修正,你原有的沙盒與核准 設定仍然適用。

瀏覽審查窗格 ​

  • 按一下檔案名稱通常會在你選擇的編輯器中開啟該檔案。你 可以在開發人員設定中選擇預設編輯器。
  • 按一下檔案名稱的背景區域,即可展開或收合差異內容。
  • 按住 Cmd 鍵並按一下某一行,即可在你選擇的編輯器中開啟該行。
  • 如果你對某項變更感到滿意,可以暫存該變更,或還原不需要的變更。

用行內註解提供意見 ​

行內註解可讓你直接將意見附加至差異中的特定程式碼行。 這通常是引導 Codex 採用正確修正方式的最快方法。

若要留下行內註解:

  1. 開啟審查窗格。
  2. 將游標移到想加上註解的程式碼行上。
  3. 選取顯示的 + 按鈕。
  4. 撰寫意見並送出。
  5. 完成意見回饋後,回到對話中傳送訊息。

由於註解是針對特定程式碼行,Codex 可以比收到 一般指示時做出更精確的回應。

Codex 會將行內註解視為審查指引。留下註解後,請傳送一則 後續訊息以明確說明你的意圖,例如:「處理這些 行內註解,並將變更範圍維持在最小限度。」

Pull Request 審查 ​

當 Codex 擁有你的程式碼庫的 GitHub 存取權,且目前專案位於 Pull Request 分支時,ChatGPT 桌面版應用程式可協助你在不離開 應用程式的情況下處理 Pull Request 意見。側邊欄會顯示 Pull Request 的 上下文與審查者的意見,審查窗格則會在差異旁顯示註解, 讓你能在同一個對話中請 Codex 處理問題。

安裝 GitHub CLI(gh),並使用 gh auth login 完成身分驗證,讓 Codex 可以載入 Pull Request 上下文、審查註解和已變更的檔案。如果未安裝 gh 或尚未通過驗證,Pull Request 詳細資料可能不會顯示在側邊欄 或審查窗格中。

若要在同一處完成整個修正流程,請依照以下步驟:

  1. 在 Pull Request 分支上開啟審查窗格。
  2. 檢視 Pull Request 上下文、註解和已變更的檔案。
  3. 請 Codex 修正你指定要處理的註解所指出的問題。
  4. 在審查窗格中檢查產生的差異。
  5. 準備好後,將變更暫存、提交並推送至 Pull Request 分支。

如需瞭解由 GitHub 觸發的審查,請參閱在 GitHub 中使用 Codex。

暫存與還原檔案 ​

審查窗格提供 Git 操作,讓你能在提交前調整差異內容。

你可以在下列層級暫存、取消暫存或還原變更:

  • 完整差異:使用審查標頭中的操作按鈕,例如 全部暫存 或 全部還原。
  • 個別檔案:暫存、取消暫存或還原個別檔案。
  • 個別差異區塊:暫存、取消暫存或還原單一差異區塊。

想接受部分變更時,請使用暫存;想捨棄變更時,則使用還原。

已暫存與未暫存狀態 ​

Git 可讓同一個檔案同時包含已暫存和未暫存的變更。發生這種情況時,窗格可在兩種檢視中顯示同一個檔案。這是正常的 Git 行為。

非官方社群教程 · 「官方文件」區為 learn.chatgpt.com 中文原文映象 · 以官方頁面為準