將 Copilot 工作階段同步至 GitHub
根據預設,VS Code 會將您的聊天工作階段同步至您的 GitHub 帳戶,包括所有本機代理程式工作階段。已同步的工作階段對您而言是私密且不公開的,除非您明確共用它們,否則其他人無法看見。它們會顯示在 GitHub.com 上您存放庫的 Agents 索引標籤中,讓您能夠透過工作階段見解跨所有工作階段進行查詢,包括來自 Copilot CLI、編碼代理程式、程式碼審查和 GitHub Copilot 桌面應用程式的工作階段。
退出工作階段同步
若要將工作階段資料僅保留在本機,請將 chat.sessionSync.enabled 此設定可由您的組織管理。請聯絡您的管理員以進行變更。 設定為 false。當您退出時,工作階段資料會留在您的電腦上,且您只能在本機進行查詢。
從同步中排除存放庫
使用 chat.sessionSync.excludeRepositories 來防止特定存放庫中的工作階段同步至雲端。此設定接受確切的 owner/repo 名稱或萬用字元模式
"chat.sessionSync.excludeRepositories": [
"my-org/private-repo",
"my-org/secret-*"
]
來自相符存放庫的工作階段將僅儲存在本機。
企業原則
對於 Copilot Business 與 Copilot Enterprise 使用者,有兩個原則可控制工作階段同步
- GitHub.com 企業原則 (「將本機工作階段儲存在雲端」):企業與組織擁有者可在 GitHub.com 上設定此項,以為其使用者啟用或停用雲端同步。
- VS Code 群組原則 (
CopilotSessionSync):當停用時, chat.sessionSync.enabled 此設定可由您的組織管理。請聯絡您的管理員以進行變更。 設定會強制設為false,且工作階段將僅保留在本機。
啟用此原則並不會讓管理員存取您的工作階段資料。已同步的工作階段會繫結至您的個人帳戶,且預設僅供您存取。
當由原則停用時,工作階段同步狀態會顯示依原則停用,且使用者無法覆寫此設定。
共用工作階段
工作階段預設不會共用。在 GitHub.com 上,您可以共用已同步的工作階段,以提供具備該存放庫存取權的任何人進行僅供檢視的存取
- 開啟 GitHub.com 上的 Agents 索引標籤。
- 選取一個工作階段,然後從
...功能表中開啟共用設定。 - 啟用共用以賦予存放庫共同協作者僅供檢視的存取權。
收件者可以檢視工作階段的提示、回應和檔案變更,但無法引導或修改工作階段。共用的工作階段不會被編入索引以供其他使用者的工作階段查詢使用。
工作階段同步狀態
工作階段同步狀態會顯示在「聊天」檢視中的 Copilot 狀態列中。它會顯示雲端同步的目前狀態
| 狀態 | 說明 |
|---|---|
| 未啟用 | 工作階段同步已關閉。資料會留在本機裝置上。 |
| 已啟用 | 工作階段正在同步至您的 GitHub 帳戶。 |
| 已同步 N 個工作階段 | 顯示已上傳的工作階段數量。選取以在 GitHub.com 上檢視工作階段。 |
| 正在同步 N 個工作階段 | 正在上傳。 |
| 依原則停用 | 您組織的原則已阻止工作階段同步。 |
| 同步錯誤 | 上次同步時發生錯誤。請稍後再試。 |
隱私權與資料控制
- 工作階段預設對您而言是私密的。已同步的工作階段會繫結至您的個人 GitHub 帳戶,且除非您明確共用它們,否則僅供您存取。
- 諸如權杖、API 金鑰和憑證等密鑰會在資料離開您的電腦之前自動遭到移除。
- 您隨時可以將 chat.sessionSync.enabled 此設定可由您的組織管理。請聯絡您的管理員以進行變更。 設定為
false來退出。現有的已同步工作階段會保留在 GitHub.com 上,直到您將其刪除為止。
刪除已同步的工作階段
若要刪除已同步的工作階段資料,請從「命令選擇區」執行 Delete Session Sync Data 命令 (github.copilot.sessionSync.deleteSessions)。此命令會顯示一個挑選器,讓您選取要移除的工作階段。選取工作階段後,您會選擇刪除範圍
- 從本機和雲端刪除:從您的電腦和 GitHub.com 移除工作階段資料。此動作無法復原。
- 僅從雲端刪除:從 GitHub.com 移除工作階段資料,但保持本機資料完整。
您也可以從 GitHub.com 上的 Agents 索引標籤隱藏或刪除個別的已同步工作階段。隱藏工作階段會將其從您的工作階段索引中移除,使其不再顯示在查詢結果中。
設定參考
| 設定 | 預設值 | 說明 |
|---|---|---|
| github.copilot.chat.localIndex.enabled | true |
啟用本機工作階段追蹤 (同步的先決條件) |
| chat.sessionSync.enabled 此設定可由您的組織管理。請聯絡您的管理員以進行變更。 | true |
將工作階段同步至您的 GitHub 帳戶 |
| chat.sessionSync.excludeRepositories | [] |
要從同步中排除的存放庫模式 |