檢視 AI 生成的程式碼編輯
當您在 Visual Studio Code 中與聊天功能互動時,AI 可能會針對專案中的多個檔案產生程式碼編輯內容。本文將說明如何審查、接受或捨棄這些由 AI 產生的程式碼編輯內容。
待處理變更
一旦 AI 對您的檔案進行變更,這些變更會直接套用並儲存至磁碟。VS Code 會追蹤哪些檔案有待處理的編輯內容,並讓您逐一或一次全部審查它們。
聊天檢視(Chat view)會顯示已編輯且尚待您審查的檔案清單。有待處理編輯內容的檔案,其檔案總管檢視(Explorer view)和編輯器分頁標籤上也會有一個方形點圖示作為標記。

當您開啟已變更的檔案時,編輯器會顯示已套用變更的行內差異(inline diff)。
當您關閉 VS Code 時,系統會記憶待處理編輯內容的狀態,並在您重新開啟 VS Code 時予以復原。
審查變更
請依照下列步驟審查檔案中的 AI 產生程式碼編輯內容
-
從聊天檢視中的已變更檔案清單,或從檔案總管檢視中選取檔案,以開啟有待處理編輯內容的檔案。
-
使用編輯器覆蓋層中的 向上 和 向下 控制項,在檔案內的個別編輯項目之間進行瀏覽。
-
針對每個編輯項目,選擇下列其中一項操作
- 選取 Keep(保留) 以接受編輯。
- 選取 Undo(復原) 以拒絕編輯並還原變更。
- 將滑鼠游標懸停在行內變更上,即可接受或拒絕該特定變更,而不影響檔案中的其他編輯內容。
-
或者,您也可以從聊天檢視中一次接受或拒絕所有檔案中的所有變更。

下列鍵盤快速鍵有助於您瀏覽並審查編輯內容
| 動作 | 快速鍵 |
|---|---|
| 前往下一個編輯項目 | 編輯器覆蓋層中的 向下 鍵 |
| 前往上一個編輯項目 | 編輯器覆蓋層中的 向上 鍵 |
當您在檔案中保留或復原某項編輯時,編輯器會自動導航至下一個有待處理變更的編輯項目,該項目可能位於不同的檔案中。若要停用此自動導航功能並停留在目前檔案,請將 chat.editing.revealNextChangeOnResolve 設定為 false。
原始碼控制整合
如果您在原始碼控制檢視中暫存您的變更,任何待處理的編輯內容都會被自動接受。另一方面,如果您捨棄變更,任何待處理的編輯內容也會被一併捨棄。
自動接受編輯
您可以設定 chat.editing.autoAccept 設定,讓 VS Code 在經過一段可設定的延遲時間後,自動接受 AI 產生的程式碼編輯內容。將滑鼠游標懸停在編輯器覆蓋層控制項上,即可停止自動接受的倒數計時。
如果您自動接受所有編輯內容,強烈建議您在將其提交至原始碼控制之前先審查變更。深入了解 在 VS Code 中使用 AI 的安全性考量。
編輯敏感檔案
為了防止對敏感檔案(例如工作區組態設定或環境設定)進行意外編輯,VS Code 會在套用編輯內容前提示您進行批准。在聊天功能中,您可以查看建議變更的差異檢視,並選擇批准或拒絕它們。
使用 chat.tools.edits.autoApprove 設定來配置哪些檔案需要批准。該設定使用全域模式(glob patterns)來比對工作區中的檔案路徑。
以下組態範例會自動允許對所有檔案進行編輯,但 .vscode 資料夾中的 JSON 檔案以及名為 .env 的檔案除外,這些檔案會提示您進行批准
"chat.tools.edits.autoApprove": {
"**/*": true,
"**/.vscode/*.json": false,
"**/.env": false
}
從工作階段清單審查檔案變更
當工作階段完成並對您的專案進行程式碼變更時,工作階段清單會顯示該工作階段的檔案變更統計資料。若要審查變更,請從清單中選取該工作階段以開啟詳細資料。

根據代理程式類型的不同,您可以選擇將變更套用到本機工作區,或是檢出(checkout)該工作階段的分支(適用於雲端代理程式)。