首頁 > 科技週邊 > 人工智慧 > Github Copilot Workspace入門

Github Copilot Workspace入門

William Shakespeare
發布: 2025-03-10 09:16:09
原創
879 人瀏覽過

GitHub Copilot Workspace (CW) 技術預覽版現已推出! CW 是一款以任務為中心的開發環境,允許您使用自然語言為代碼庫定義任務,並與 AI 協同完成這些任務。本指南將引導您通過多種入口點開始使用 Copilot Workspace。

目錄

  • 任務啟動入口點
    • GitHub Issue
    • 通過 CW 儀錶盤創建即席任務
    • 通過代碼庫頁面創建即席任務
  • 從模板創建代碼庫
    • 使用 GitHub.com 上的“使用此模板”
    • 使用儀錶盤上的“新建會話”
    • 使用 URL
  • GitHub Copilot Workspace 的代碼庫維護者功能
  • 限制代碼庫中 GitHub Copilot Workspace 的使用
  • 已知問題和未來改進
    • 重寫大型文件
    • 代碼生成
    • 內容選擇
    • 網絡檢索
    • 構建/測試修復
    • 小型任務與大型任務
    • 授權
  • 總結
  • 常見問題

任務啟動入口點

高效啟動任務對於保持生產力和簡化工作流程至關重要。無論基於現有的 GitHub issue 還是從頭創建新任務,CW 都提供多個入口點來幫助您輕鬆開始任務。通過利用這些靈活的選項,您可以快速從識別任務過渡到積極處理任務,確保平滑且有條理的工作流程,以滿足您的需求。

1. GitHub Issue

如果您已經有描述要執行的任務的 GitHub issue,則從該 issue 開始非常簡單。請按照以下步驟操作:

  • 打開 GitHub issue。
  • 在右側面板的“開發”部分下,點擊“在 Workspace 中打開”按鈕。

此操作將在 Copilot Workspace 中打開 issue,並啟動分析和解決 issue 的過程。

Getting Started with GitHub Copilot Workspace

2. 通過 CW 儀錶盤創建即席任務

您也可以直接從 CW 儀錶盤啟動任務:

  • 打開 CW 儀錶盤。
  • 點擊“新建會話”部分下的“選擇代碼庫”選項。
  • 搜索您要處理的代碼庫。
  • 選擇代碼庫並從頭定義一個新任務,類似於起草 issue。

為代碼庫執行任務後,它將顯示在“新建會話”部分下的會話列表中,方便您為正在進行的項目選擇新任務。

Getting Started with GitHub Copilot Workspace

3. 通過代碼庫頁面創建即席任務

啟動任務的另一種方法是直接從代碼庫頁面啟動:

  • 導航到您要處理的項目的代碼庫頁面。
  • 點擊綠色的“代碼”按鈕。
  • 在“Copilot”選項卡中輸入新任務。
  • 提交任務。

這將帶您進入 CW 並開始分析和解決任務的過程。

Getting Started with GitHub Copilot Workspace

從模板創建代碼庫

Copilot Workspace 允許您使用自然語言從模板創建代碼庫。

使用 GitHub.com 上的“使用此模板”

要使用 Copilot Workspace 創建代碼庫,請導航到 GitHub.com 上的模板代碼庫並選擇“使用此模板”:

  • 點擊“使用此模板”開始創建您的代碼庫。

Getting Started with GitHub Copilot Workspace

  • 該任務基於您提供的軟件描述以及模板代碼庫的 README。

啟動後,創建代碼庫的任務如下所示:

  • 該任務標記為“代碼庫”,並且“模板”面板指示模板代碼庫。

Getting Started with GitHub Copilot Workspace

Copilot Workspace 將根據您的描述生成代碼庫規範、創建計劃和最終實現。

使用儀錶盤上的“新建會話”

您還可以通過點擊 Copilot Workspace 儀錶盤上的“新建會話”按鈕並蒐索模板來從模板創建代碼庫。這將在工作區中打開一個新任務,您可以在其中描述要創建的軟件。

使用 URL

您可以通過添加 ?template=true 作為查詢參數來為任何代碼庫 URL 啟用“創建代碼庫”模式。例如:

<code>https://copilot-workspace.githubnext.com/githubnext/hello-world?template=true</code>
登入後複製
登入後複製

某些代碼庫默認情況下被視為模板:

  • 任何 GitHub 模板代碼庫。
  • 組織中名稱包含“templates”的任何代碼庫。
  • 名稱包含“-template”、“-scaffold”、“-starter”或“-boilerplate”的任何代碼庫。

GitHub Copilot Workspace 的代碼庫維護者功能

作為代碼庫維護者,Copilot Workspace 可以通過多種方式為您提供幫助:

  • 您可以探索潛在的 issue 解決方法。
  • 您可以為潛在貢獻者生成 issue 解決方法的草圖,降低參與門檻。
  • 它可以幫助培養一種文化,在這種文化中,issue 創建者會留下更多關於如何解決 issue 的有用說明,供貢獻者和 AI 助手使用。

例如,當您的代碼庫中提交新的 issue 時,您可以使用 Copilot Workspace 生成該 issue 的解決方案草圖。然後,您可以使用“共享”按鈕將此草圖發布回 issue 線程,並附帶關於您是否認為它有用以及可能需要改進哪些方面的附加評論。這可以幫助潛在貢獻者更好地理解問題,並為他們的工作提供一個起點。

同樣,當提交新的 issue 時,您可以要求貢獻者為該 issue 創建 Copilot Workspace 會話。這可能會幫助貢獻者更好地理解問題,並為他們的工作提供一個起點。您還可以將此指導包含在代碼庫的 issue 模板中,假設您的用戶可以訪問 Copilot Workspace。您還可以要求貢獻者在 Copilot Workspace 會話中留下其他說明,這可以幫助未來的貢獻者和 AI 助手更好地理解問題。

限制代碼庫中 GitHub Copilot Workspace 的使用

不守規矩的貢獻者可能會過度使用 AI 輔助代碼生成。因此,我們為代碼庫維護者提供了禁用直接使用 Copilot Workspace 在其代碼庫中創建 pull request 和/或 issue 評論的選項。

要禁用使用 Copilot Workspace 直接創建 pull request,請在代碼庫默認分支中創建一個名為 .github/copilot-workspace/policy.json 的文件,其中包含以下內容:

<code>https://copilot-workspace.githubnext.com/githubnext/hello-world?template=true</code>
登入後複製
登入後複製

要禁用使用 Copilot Workspace 直接生成包含 Copilot Workspace 會話鏈接的 issue 評論,請將以下內容添加到 policy.json 文件中:

<code>{
"allowPullRequests": false
}</code>
登入後複製

Copilot Workspace 用戶仍然可以:

  • 創建 Copilot Workspace 會話的共享鏈接,並將它們粘貼到 issue 評論中。
  • 推送到代碼庫中的新分支(如果他們有寫入權限)。
  • 推送到代碼庫分支的新分支。
  • 手動從分支創建 pull request。
  • 使用 Copilot Workspace 為他們自己的 pull request 和 issue 評論生成代碼片段和文件,以供他們在自己的代碼庫中使用。

已知問題和未來改進

請記住,GitHub Copilot Workspace 是一個技術預覽版,並且是一個積極開發的領域。本文檔列出了一些已知問題和我們希望在未來改進產品的一些已知領域。

以下是我們正在積極努力改進 Copilot Workspace 的核心領域:

重寫大型文件

當它實現涉及大型文件更改的計劃時,可能需要很長時間才能完成。 Copilot Workspace 目前使用“整個文件重寫”,因為我們發現這在 Copilot Workspace 可用於的各種任務上實現了高度的徹底性。我們正在研究部分文件重寫技術(自動和在用戶指導下),以提高此操作的性能。

代碼生成

Copilot Workspace 生成的代碼質量並不總是完美的。它與使用的底層 AI 模型的質量高度相關。我們正在多個層面努力改進 Copilot Workspace 生成的代碼質量。例如,代碼生成的質量受任務的規劃和規范質量以及評估和澄清這些任務的整體用戶體驗的影響。我們也在努力改進這些方面。達到的質量也與迭代生成的代碼的經驗有關。我們正在積極研究更細粒度的迭代技術。

內容選擇

Copilot Workspace 中的內容選擇有時可能不是最佳的,這會導致生成與任務無關的代碼。我們正在努力改進 Copilot Workspace 中的內容選擇。

網絡檢索

任務可以包含指向文檔等網絡資源的直接鏈接。此外,還可以從任務中推斷出一些網絡檢索。 Copilot Workspace 目前不執行網絡檢索,我們正在努力添加此功能。

構建/測試修復

生成代碼後,可以使用 AI 和傳統工具根據從構建、測試和運行代碼生成的診斷信息來“修復”代碼。我們在 Copilot Workspace 中已經有一些對此的支持,我們正在努力改進這一點。

小型任務與大型任務

有些任務非常小:更新文件的幾行代碼。有些任務非常大:逐個功能地實現一個全新的代碼庫功能。 Copilot Workspace 目前是為 GitHub issue 的中等規模任務而設計的。我們有興趣在更適合小型和大型任務的安排中提供 Copilot Workspace 核心概念的變體。例如,對於小型任務,我們可能會提供一個“精簡版”的 Copilot Workspace,其中只有一個任務。對於大型任務,我們可能會提供一種將任務分解為子任務的方法。

授權

它使用 GitHub OAuth 應用程序進行身份驗證。某些組織可能有策略,這些策略會限制 OAuth 應用程序與它們的代碼庫進行交互。除非組織管理員批准 Copilot Workspace OAuth 應用程序,否則您將無法在私有代碼庫中執行任務或在公共代碼庫中創建 pull request。我們正在努力為基於 GitHub 應用程序的 Copilot Workspace 添加第二個授權選項,並在可用時更新本文檔。

總結

開始使用 Copilot Workspace 既簡單又靈活,有多個入口點適合您的工作流程。無論是從 GitHub issue、CW 儀錶盤還是代碼庫頁面開始,您都可以輕鬆定義任務並與 AI 協作以增強您的開發流程。那麼,您還在等什麼?立即開始探索吧!

常見問題

Q1. 什麼是 Copilot Workspace (CW)? 答:CW 是一種以任務為中心的開發環境,允許用戶使用自然語言為代碼庫定義任務,並與 AI 協同高效地完成這些任務。

Q2. 如何在 Copilot Workspace 中啟動任務? 答:您可以通過多種入口點啟動任務: A. 通過點擊“在 Workspace 中打開”從 GitHub issue 啟動。 B. 通過選擇代碼庫並定義新任務直接通過 CW 儀錶盤啟動。 C. 通過在“Copilot”選項卡中輸入任務從代碼庫頁面啟動。

Q3. 我可以在 Copilot Workspace 中從模板創建代碼庫嗎? 答:是的,您可以通過以下方式使用模板創建代碼庫: A. 在 GitHub.com 上選擇“使用此模板”。 B. 點擊 CW 儀錶盤上的“新建會話”並選擇模板。 C. 將 ?template=true 添加到任何代碼庫 URL。

Q4. Copilot Workspace 如何幫助代碼庫維護者? 答:它通過以下方式幫助維護者: A. 探索潛在的 issue 解決方法。 B. 為貢獻者生成解決方案草圖。 C. 鼓勵詳細的 issue 說明和說明。

Q5. Copilot Workspace 有哪些已知問題? 答:是的,一些已知問題包括: A. 重寫大型文件緩慢。 B. 內容選擇有時不是最佳的。 C. 模糊檢測過於敏感。 D. 生成 pull request 說明時沒有“停止”按鈕

以上是Github Copilot Workspace入門的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板