🚀 在 VS Code 中取得

宣布推出免費的 GitHub Copilot for VS Code

2024 年 12 月 18 日 作者:Burke Holland, @burkeholland

我們很高興宣布推出全新的 GitHub Copilot 免費方案,今天起在 VS Code 中提供給所有人使用。您只需要一個 GitHub 帳戶。無需試用。無需訂閱。無需信用卡。

啟用 GitHub Copilot Free

您可以點擊上面的連結,或直接從 VS Code 內啟用 GitHub Copilot,就像這樣...

使用 GitHub Copilot Free,您每月可獲得 2000 次程式碼自動完成。這大約是每個工作日 80 次 - 相當多。您還可以獲得每月 50 次聊天請求,以及存取 GPT-4o 和 Claude 3.5 Sonnet 模型

如果您達到這些限制,理想情況下是因為 Copilot 盡職盡責地幫助您完成工作!如果您發現需要更多 Copilot,付費的 Pro 方案是無限制的,並且可以存取其他模型,如 o1Gemini (將於新年推出)。

隨著這次公告,GitHub Copilot 成為 VS Code 體驗的核心部分。團隊一直以來都非常努力,不斷改進體驗,推出全新的 AI 功能。讓我們來看看過去幾個月中新增到 GitHub Copilot 的一些新功能。這是您的編輯器,透過 AI 重新定義。

使用 Copilot Edits 處理多個檔案

Copilot Edits 是一種多檔案編輯體驗,您可以從聊天側邊欄的頂部開啟。給定提示後,Edits 將建議跨檔案的變更,包括在需要時建立新檔案。這為您提供對話式聊天的流程,結合 Copilot 程式碼產生功能的強大功能。結果是您必須親身體驗才能相信的。

試試看: 使用 Flutter 建置原生行動應用程式。我上週末建立了一個遊戲,但我從未使用過 Flutter。

多種模型,您的選擇

無論您使用 ChatInline Chat 還是 Copilot Edits,您都可以決定您的配對程式設計師是誰。

AI model selection menu in VS Code.

試試看: 使用 4o 產生新功能的實作計畫,然後將該提示饋送到 GitHub Copilot Edits 中的 Claude 來建置它。

自訂指示

透過 自訂指示,告訴 GitHub Copilot 您希望如何完成工作。這些指示會隨著每個請求傳遞給模型,讓您可以指定您的偏好和模型需要知道的細節,以按照您想要的方式編寫程式碼。

您可以在編輯器或專案層級指定這些指示。如果您在專案中包含 .github/copilot-instructions.md 檔案,我們甚至會自動擷取它們。這些指示可以輕鬆地與您的團隊共享,以便每個人都能保持在同一頁面上 - 包括 GitHub Copilot。

例如...

## React 18
* Use functional components
* Use hooks for state management
* Use TypeScript for type safety

## SvelteKit 4
* Use SSR for dynamic content rendering
* Use static site generation (SSG) for pre-rendered static pages.

## TypeScript
* Use consistent object property shorthand: const obj = { name, age }
* Avoid implicit any

試試看: 要求 Copilot 產生將您的資料庫結構描述轉儲到檔案的命令,然後將該檔案設定為您的自訂指示之一。

完整的專案感知能力

GitHub Copilot 具有 AI 驅動的領域專家,您可以使用 @ 語法提及他們。我們稱這些為「參與者」。@workspace 參與者 是您整個程式碼庫領域的領域專家。

GitHub Copilot 也會執行意圖偵測 (如影片中所示),並且如果它看到您提出的問題需要完整的專案上下文,則會自動包含 @workspace

試試看: 在聊天提示中輸入 /help 以查看 GitHub Copilot 中所有參與者及其各種專業領域的列表,以及可以大幅減少提示的斜線命令。

命名事物和其他困難的問題

他們說命名事物是電腦科學中最困難的問題之一。按下 F2 以重新命名某個事物,GitHub Copilot 將根據該符號在您的程式碼中的實作和使用方式,為您提供一些建議。

試試看: 如果您不知道該如何命名某個事物,請不要想太多。先將其命名為 foo 並實作它。然後按下 F2,讓 GitHub Copilot 為您建議一個名稱。

暢所欲言

選取麥克風圖示以開始語音聊天。這由免費、跨平台的 VS Code Speech 擴充功能 提供技術支援,該擴充功能在本地模型上執行。無需第三方應用程式。

VS Code with file list and voice input active.

試試看: 將 Speech 與 GitHub Copilot Edits 搭配使用來建立下一個應用程式的原型。您實際上可以用說話的方式完成一個可運作的演示。

成為終端機專家

透過終端機聊天,您幾乎可以在終端機中執行任何操作。在 VS Code 終端機中時,按下 Cmd/Ctrl + i 並告訴 GitHub Copilot 您想做什麼。Copilot 也可以透過分析錯誤輸出,解釋如何修復失敗的 Shell 命令。

例如,我知道我可以使用 ffmpeg 函式庫 從影片中擷取影格,但我不知道語法和旗標。沒問題!

Terminal displaying a script to extract video frames.

試試看: 下次您在終端機中遇到錯誤時,請尋找提示旁邊的閃爍圖示。選取它以讓 GitHub Copilot 為您修復、解釋甚至自動更正 Shell 命令。

無懼承諾

不再有寫著「變更」的提交訊息。GitHub Copilot 將根據您所做的變更和您最近的幾則提交訊息,為您建議提交訊息。您可以使用提交產生自訂指示,以完全按照您想要的方式格式化訊息。

試試看: 超越提交。安裝 GitHub Pull Requests and Issues 擴充功能,您可以產生提取請求描述、取得提取請求摘要,甚至取得問題的建議修復方案。所有操作都在不離開 VS Code 的情況下完成。

擴充功能滿足您的所有需求

每個 VS Code 擴充功能都可以直接與 GitHub Copilot API 連結,並提供自訂的 AI 體驗。看看 MongoDB 及其 擴充功能,它可以編寫令人印象深刻的複雜查詢、使用模糊搜尋等等...

試試看: 使用 GitHub Copilot 為 GitHub Copilot 建置您自己的擴充功能!我們建立了一些新的教學課程,向您展示如何建置程式碼導師聊天參與者產生 AI 驅動的程式碼註解

對未來的願景

最後這個是我們即將新增到 GitHub Copilot 的預覽功能,但它太酷了,現在就想展示給您看。

安裝 Vision Copilot Preview 擴充功能,並要求 GitHub Copilot 根據螢幕截圖或標記產生介面。

或使用它為圖像產生替代文字。

試試看: 使用 Figma 或 Sketch (或 PowerPoint - 如果您這樣做也沒關係。我也會這樣做) 模擬 UI。然後使用 @vision 產生 UI。您甚至可以告訴它要使用哪個 CSS 框架。

注意: Vision 今天是預覽版,需要您擁有自己的 OpenAI、Anthropic 或 Gemini API 金鑰。當我們將其作為 GitHub Copilot 的一部分發布時,將不需要金鑰。即將推出!

掌握 GitHub Copilot 的最新動態

我們還有更多 GitHub Copilot 功能想要向您展示,但沒有什麼可以取代親身體驗。如果您剛開始使用,我們建議您查看這 3 部簡短影片,以快速了解 Copilot UI,以及學習一些提示工程最佳實務。

我們每個月都會發布 GitHub Copilot 的更新和新功能。掌握 AI 程式碼編寫最新動態的最佳方式是在 XBlueskyLinkedIn 甚至 TikTok 上關注我們。我們將在更新發布時立即在您的動態中提供簡潔明瞭的更新資訊。

如果您有任何意見反應,我們很樂意聽取。請隨時在社群媒體上 @ 我們,或在 GitHub Copilot 擴充功能問題儲存庫 中提出問題或功能請求。

其他地方的 GitHub Copilot

作為免費方案的一部分,您也可以在 GitHub.com 上使用 GitHub Copilot。

雖然我們與 GitHub 合作建構 Visual Studio Code 體驗,但 Copilot 本身並非 VS Code 獨有。您可能想知道 Visual Studio 等編輯器。這些使用者也會獲得免費的 Copilot 方案嗎?

是的。當然。查看 VS 團隊的 這篇部落格文章,了解目前可用的功能以及即將推出的功能。

適用於所有人的 AI 程式碼編輯器

2025 年將是 GitHub Copilot 的重要一年,現在它已成為整體 VS Code 體驗的核心部分。我們希望您能加入我們的行列,再次重新定義程式碼編輯器。

啟用 GitHub Copilot Free

祝您編碼愉快!

Burke Holland @burkeholland