共用方式為


使用 GitHub Copilot 來搭配 Azure Boards

Azure DevOps 服務

備註

此功能為私人預覽。 存取有限,功能可能會在正式上市前改變。

Azure Boards 與 GitHub Copilot 整合,簡化您的開發工作流程。 您可以將工作項目與 Copilot 直接使用,Copilot 會自動建立分支、實作程式碼變更,並產生草稿合併請求,同時更新工作項目的進度。

此整合可讓您:

  • 從工作項目啟動自動化編碼
  • 直接在 Azure DevOps 追蹤 GitHub Copilot 的進度
  • 自動將產生的拉取請求和分支連結到工作項目
  • 監控草稿拉取請求何時準備好進行審查

這很重要

此整合需要 GitHub 倉庫與 GitHub App 認證。 Azure Repos(Azure DevOps Git repositories)唔支援 GitHub Copilot 整合。

先決條件

類別 需求
授權 Active GitHub Copilot 訂閱
Repository GitHub 倉庫(非 Azure Repos)並具備適當權限
驗證 GitHub 應用程式認證在 Azure DevOps 與 GitHub 之間設定(個人存取權杖不支援)
許可 在 Azure DevOps 中貢獻工作項目的存取權限,以及連結工件的能力
Azure Boards 連線 連接 Azure Boards 至 GitHub

支援的工作項目類型

GitHub Copilot 整合支援需求與任務類別下的任何工作項目類型,包括:

  • 標準工作項目類型:使用者故事、產品待辦項目、需求、任務、錯誤、問題
  • 你在流程範本中建立的自訂工作項目類型

這種廣泛的支援意味著你可以在 Azure DevOps 專案中,使用 GitHub Copilot 配合來自任何流程範本(敏捷、Scrum、CMMI 或自訂)的工作項目。

從工作項目啟動 GitHub Copilot

  1. 開啟你想用 GitHub Copilot 使用的工作項目。

  2. 在工作項目表單中,選擇 GitHub 圖示。

    如果有多個選項,按鈕會變成下拉選單,提供不同選項。

    截圖顯示工作項目中 GitHub Copilot 圖示被高亮顯示。

  3. 選擇 「用 GitHub Copilot 建立拉取請求」。

    截圖顯示已選取的 GitHub 選單下拉選單,以及啟動 GitHub pull request 的選項。

  4. 選擇 Copilot 應該建立 pull request 的目標 GitHub 儲存庫和分支。

    備註

    只有透過 GitHub App 認證連接的 GitHub 倉庫會出現在倉庫清單中。 Azure Repo 不被支援。

  5. (可選)新增特殊指示以指導 Copilot 的實施方式。 例如,你可以加上「建立帶有設定說明的 README」。

  6. 選擇 「建立 」以開始自動化編碼流程。

    截圖顯示了倉庫和分支的選單下拉選單,用來用 Copilot 建立草稿拉取請求。

當你開始使用Copilot時會發生什麼事

當你從工作項目啟動 Copilot 時,會發生以下自動化流程:

  • 資料分享:Azure DevOps 會與 GitHub Copilot 共享工作項目標題、大型文字欄位(如描述與接受條件)、註解,以及回工作項目的連結。
  • 授權驗證:Azure DevOps 會驗證你的 GitHub Copilot 授權。
    • 如果驗證失敗,會出現購買 GitHub Copilot 的 取得授權 選項。
  • 儲存庫準備:Copilot 為該工作建立一個新的分支。
  • 拉取請求建立:草案拉取請求會自動產生,並連結到你的工作項目。
  • 工作項目更新
    • 在工作項目討論中會新增一則評論。
    • 狀態指示顯示在開發區塊上方。
    • 分支和拉取請求連結會自動添加。
  • 進度追蹤:即時狀態更新顯示 Copilot 的進度。

監控 GitHub Copilot 的進度

狀態指示器

Azure DevOps 會直接在您的工作項目上顯示 Copilot 狀態,並可能呈現三種狀態:

  • 進行中:Copilot 正在積極進行程式碼變更。
  • 準備審查:草擬拉取請求已完成,供您審閱。
  • 錯誤:編碼過程中發生問題(滑鼠移至可查看詳情)。

備註

根據工作項目的複雜度,副駕駛操作預計需時5至15分鐘完成。

棋盤卡指示器

當你在看板上查看工作項目時,可以直接在工作項目卡片上標示 GitHub Copilot 狀態。 卡片上會出現一個 GitHub Copilot 圖示,表示 Copilot 正在處理或完成該項目的工作。

截圖顯示工作項目卡在機上,GitHub Copilot 狀態圖示顯示進度。

這個視覺指示器幫助你快速辨識哪些工作項目正在進行 Copilot 操作,而不必打開每個工作項目。

開發版塊最新動態

你工作項目的開發區塊會自動顯示:

  • 由 Copilot 建立的連結分支。
  • 已草擬的拉取請求,附即時狀態。
  • 直接連結以檢視 GitHub 上產生的程式碼。

檢視並合併拉取請求

  1. 請選擇拉取請求連結,以在 GitHub 上檢視 Copilot 的實作。

  2. 如果您對變更感到滿意,請將草稿轉換成一般的 pull request(拉取請求)。 工作項目討論會自動收到關於拉取請求狀態變更的更新。

  3. 使用 GitHub 的介面來審查、留言並批准產生的程式碼。

  4. 準備好後,請在 GitHub 完成合併流程。

    • 合併提交會自動連結到你的工作項目。
    • 若分支被刪除,分支連結也會被移除。
    • 成功合併後副駕駛狀態指示會被隱藏。
  5. 拉取請求合併後:

    1. 為了反映完成,請更新你的工作項目狀態。
    2. 確認合併提交是否出現在開發區塊。
    3. 如果實作已完全滿足需求,請關閉該工作項目。

欲了解更多資訊,請參閱我們的培訓模組《 開始使用 GitHub Copilot》。

疑難排除

  • 查看錯誤詳情:將滑鼠移到錯誤圖示上,即可獲得具體錯誤資訊。

  • 重啟副駕駛:選擇 重啟副副駕駛 ,以相同或修改的指令再次嘗試該程序。

    截圖顯示選取了「更多操作」圖示,然後在開發區域中重新運行 Copilot 選項。

  • 手動介入:如有需要,手動修改已產生的分支與拉取請求。

授權問題

  • 問題:授權驗證失敗。
  • 解決方案:確保你有有效的 GitHub Copilot 訂閱,必要時選擇 取得授權

存放庫存取

  • 問題:看不到預期的儲存庫。
  • 解決方案
    • 確認 Azure DevOps 與 GitHub 之間 GitHub App 的連接。
    • 確保你能存取 GitHub 倉庫(不是 Azure 倉庫)。
    • 檢查倉庫權限和 GitHub 應用程式驗證。
    • 確認倉庫是否透過正確的 GitHub App 整合連接。

副駕駛錯誤

  • 問題:編碼代理遇到錯誤。
  • 解決方法:檢視錯誤細節,查看說明以確認清楚,並嘗試重跑 Copilot。

狀態未更新

  • 問題:進度狀態依然卡住。
  • 解決方案:請查看 GitHub 的實際進度,因為狀態更新取決於 GitHub 的報告。

最佳做法

  • 清楚的工作項目描述:提供詳細的驗收標準與背景,以提升 Copilot 的結果。
  • 保持變更簡單簡潔:工作項目描述越複雜冗長,Copilot 就越難理解。 專注於明確且具體的要求。
  • 具體指示:啟動 Copilot 時加入實作指引。
  • 定期監控:定期檢查進度,尤其是複雜的工作項目。
  • 即時審查:快速審查並回饋草稿拉取請求,以維持進展。
  • 正確的工作項目衛生:在整個過程中適當更新工作項目狀態。

局限性

使用 GitHub Copilot 搭配 Azure Boards 時,請注意以下限制:

  • 相依性:不支援處理工作項目間的相依性。 每個工作項目都應該是獨立完整的。
  • 同時作業:不支援管理多個不同工作項目的同時執行副駕駛操作。 先完成一個 Copilot 操作,再開始下一個。
  • 資料分享:只有工作項目標題、大文字欄位、評論和工作項目連結會與 GitHub Copilot 共享。
  • 複雜度:過於複雜或冗長的工作項目描述可能會降低 Copilot 的效能。