GitHub Copilot Workspace (CW) 技術預覽版現已推出! CW 是一款以任務為中心的開發環境,允許您使用自然語言為代碼庫定義任務,並與 AI 協同完成這些任務。本指南將引導您通過多種入口點開始使用 Copilot Workspace。
高效啟動任務對於保持生產力和簡化工作流程至關重要。無論基於現有的 GitHub issue 還是從頭創建新任務,CW 都提供多個入口點來幫助您輕鬆開始任務。通過利用這些靈活的選項,您可以快速從識別任務過渡到積極處理任務,確保平滑且有條理的工作流程,以滿足您的需求。
如果您已經有描述要執行的任務的 GitHub issue,則從該 issue 開始非常簡單。請按照以下步驟操作:
此操作將在 Copilot Workspace 中打開 issue,並啟動分析和解決 issue 的過程。
您也可以直接從 CW 儀錶盤啟動任務:
為代碼庫執行任務後,它將顯示在“新建會話”部分下的會話列表中,方便您為正在進行的項目選擇新任務。
啟動任務的另一種方法是直接從代碼庫頁面啟動:
這將帶您進入 CW 並開始分析和解決任務的過程。
Copilot Workspace 允許您使用自然語言從模板創建代碼庫。
要使用 Copilot Workspace 創建代碼庫,請導航到 GitHub.com 上的模板代碼庫並選擇“使用此模板”:
啟動後,創建代碼庫的任務如下所示:
Copilot Workspace 將根據您的描述生成代碼庫規範、創建計劃和最終實現。
您還可以通過點擊 Copilot Workspace 儀錶盤上的“新建會話”按鈕並蒐索模板來從模板創建代碼庫。這將在工作區中打開一個新任務,您可以在其中描述要創建的軟件。
您可以通過添加 ?template=true 作為查詢參數來為任何代碼庫 URL 啟用“創建代碼庫”模式。例如:
<code>https://copilot-workspace.githubnext.com/githubnext/hello-world?template=true</code>
某些代碼庫默認情況下被視為模板:
作為代碼庫維護者,Copilot Workspace 可以通過多種方式為您提供幫助:
例如,當您的代碼庫中提交新的 issue 時,您可以使用 Copilot Workspace 生成該 issue 的解決方案草圖。然後,您可以使用“共享”按鈕將此草圖發布回 issue 線程,並附帶關於您是否認為它有用以及可能需要改進哪些方面的附加評論。這可以幫助潛在貢獻者更好地理解問題,並為他們的工作提供一個起點。
同樣,當提交新的 issue 時,您可以要求貢獻者為該 issue 創建 Copilot Workspace 會話。這可能會幫助貢獻者更好地理解問題,並為他們的工作提供一個起點。您還可以將此指導包含在代碼庫的 issue 模板中,假設您的用戶可以訪問 Copilot Workspace。您還可以要求貢獻者在 Copilot Workspace 會話中留下其他說明,這可以幫助未來的貢獻者和 AI 助手更好地理解問題。
不守規矩的貢獻者可能會過度使用 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 用戶仍然可以:
請記住,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中文網其他相關文章!