遠端開發更棒
2022 年 12 月 7 日,作者:Brigit Murtaugh,@BrigitMurtaugh
Visual Studio Code 的核心是程式碼編輯器,它透過我們的遠端開發體驗與其他環境整合,變得更加強大且靈活
您可能沒有注意到,但 VS Code 具有內建的命令列介面 (CLI),可讓您控制啟動和管理編輯器的方式 - 您可以透過命令列選項開啟檔案、安裝擴充功能和輸出診斷結果
CLI 在使用 VS Code Desktop 的工作流程中非常有用,但存在一個缺口:您無法使用它啟動遠端執行個體。因此,我們希望透過讓本機和遠端更緊密地結合,來彌合這個缺口,使 CLI 更加強大。
今天,我們很高興分享我們增強的 code
CLI,它可讓您啟動 VS Code,並從 VS Code Desktop 或 vscode.dev 遠端連線到機器。更新後的 CLI 已內建於最新的 VS Code 版本中,也可獨立安裝,因此您可以建立與任何電腦的安全連線並遠端連線到該電腦,即使您無法在其上安裝 VS Code Desktop 也是如此。
除了新的 CLI 之外,我們還進行了以下更新以改善遠端開發
- 您可以直接從 VS Code UI 啟用通道。
- 通道不再是私人預覽版 – 任何人都可以建立和使用通道,無需註冊。
- 我們重新命名了兩個遠端擴充功能,以更清楚地說明它們的工作方式以及它們可以在哪些方面協助開發
- 「Remote - WSL」擴充功能現在簡稱為 WSL。
- 「Remote - Containers」擴充功能已重新命名為 Dev Containers,以反映其用於建立開發環境的用途。
從單一工具連線到任何地方
通道安全地傳輸從一個網路到另一個網路的資料。您可以使用安全通道從 VS Code desktop 或 Web 用戶端針對您選擇的任何機器進行開發,而無需設定 SSH 或 HTTPS 的麻煩(雖然如果您願意,也可以這樣做 😊)。
您有兩個絕佳的選項可從 VS Code 建立到遠端機器的通道
- 使用新的、增強的
code
CLI。 - 直接從 VS Code UI 啟用通道。
我們將在以下章節中探討這兩個選項。
增強的 code
CLI
當我們發布 VS Code 伺服器時,我們提到了我們將其整合到 code
CLI 中的長期願景。我們現在已實現這一目標,並且我們也使其可獨立安裝,以防您在虛擬機器或鎖定的機器上工作,而無法在其上安裝 VS Code Desktop。
以下是安裝 code
CLI 並使用其建立安全通道的步驟。如果您嘗試過 VS Code 伺服器的私人預覽版,則步驟將非常相似。
注意:如果您在 VS Code 伺服器的私人預覽版期間使用獨立的
code-server
CLI,您現在應該改用最新的code
CLI(透過最新的 VS Code Desktop 或獨立下載)。
-
在您想要在本機 VS Code 用戶端中進行開發的遠端機器上安裝
code
CLI。這可以是遠端桌面、虛擬機器,甚至是 Windows Subsystem for Linux (WSL) 發行版。CLI 會自動包含在您現有的 VS Code 安裝中 – 無需額外設定。如果您沒有安裝 VS Code 或無法在遠端機器上安裝它,您可以透過我們下載頁面上的獨立安裝來取得 CLI
注意:如果您使用的是獨立安裝,則以下章節中的命令將以
./code
而不是code
開頭。 -
使用 help 命令再次檢查 CLI 是否安裝成功
code -h
您可以使用以下命令探索特定於通道的命令
code tunnel -h
現在您已安裝 CLI,讓我們設定此機器以進行通道連線,以便您可以從任何 VS Code 用戶端連線到它。
-
使用
tunnel
命令建立安全通道code tunnel
此命令會在此機器上下載並啟動 VS Code 伺服器,然後建立到它的通道。
注意:當您第一次在機器上啟動通道時,系統會提示您接受伺服器授權條款。您也可以在命令列上傳遞
--accept-server-license-terms
以避免提示。 -
此 CLI 將輸出與此遠端機器相關聯的 vscode.dev URL,例如
https://vscode.dev/tunnel/<machine_name>/<folder_name>
。您可以從您想要的任何機器開啟此 URL。 -
當第一次在用戶端上開啟 vscode.dev URL 時,系統會提示您在
https://github.com/login/oauth/authorize...
URL 登入您的 GitHub 帳戶。這會對您進行隧道服務驗證,以確保您有權存取正確的遠端機器集。
恭喜,您已成功安裝並使用了最新的 code
CLI 通道功能!
從 VS Code UI 啟用通道
如果您在遠端機器上安裝了 VS Code,您也可以選擇直接從 VS Code UI 建立通道。如果您已經在 VS Code 中工作,這是啟用對您的機器的遠端存取的快速便捷方式。
在您的遠端機器上開啟 VS Code。在 VS Code 帳戶選單中,選取開啟遠端通道存取...選項,如下圖所示。您也可以開啟命令面板 (F1) 並執行命令遠端通道:開啟遠端通道存取...。
系統會提示您登入 GitHub。登入後,通道將在此遠端機器上啟動,您將能夠連線到它
在您選擇的用戶端中,您可以從上方通知中開啟 vscode.dev 連結並開始編碼!
透過遠端通道連線
Remote - Tunnels 擴充功能管理您的本機和遠端機器之間的這些安全通道。您透過 code
CLI 或 VS Code UI 開啟的 vscode.dev 執行個體都預先安裝了 Remote Tunnels 擴充功能。
如果您已經在 VS Code 用戶端(桌面或 Web)中工作,並且想要連線到遠端通道,您可以直接安裝並使用 Remote - Tunnels 擴充功能。安裝擴充功能後,開啟命令面板 (F1) 並執行命令遠端通道:連線到通道。您將能夠連線到任何具有活動通道的遠端機器
您也可以在遠端瀏覽器中檢視您的遠端機器,您可以透過命令遠端瀏覽器:聚焦於遠端檢視開啟遠端瀏覽器
移除通道或機器
如果您想要停止透過 CLI 執行的通道,請使用 Ctrl + C 結束活動連線。如果您已透過 VS Code UI 啟用通道,請執行命令遠端通道:關閉遠端通道存取...。
您可以透過在該機器上執行 code tunnel unregister
來移除機器與通道的關聯。在 VS Code 中,選取遠端瀏覽器檢視,在您要移除的機器上按一下滑鼠右鍵,然後選取取消註冊。
遠端開發擴充功能
除了通道和 code
CLI 的更新之外,我們還對我們的遠端開發擴充功能進行了一些更新,這些擴充功能可讓您使用開發容器、遠端機器或 WSL 作為功能完整的開發環境。
WSL 和開發容器
我們聽取了您對 Remote - WSL 和 Remote - Containers 擴充功能名稱的回饋。我們希望 Remote
表示您正在「遠端」或「獨立」的 WSL 發行版或開發容器中進行開發,而不是傳統的本機開發。然而,這與許多人使用的「遠端」用法不同,並且可能會造成混淆(例如,開發容器是否在我的本機上?)。
我們更新了這些擴充功能中的命名和產品內命令,使其更加清晰,將它們重新命名為 WSL 和 Dev Containers。Marketplace 和文件中的擴充功能識別碼等連結保持不變,因此您不應看到目前對這兩個擴充功能的使用造成任何中斷。
遠端通道
如上所述,您可以使用 Remote - Tunnels 擴充功能透過安全通道連線到遠端機器,而無需 SSH。我們已將擴充功能從「Remote Server」重新命名為「Remote - Tunnels」,因為我們認為這更清楚地表明其行為(畢竟,該擴充功能用於透過安全通道在遠端機器上進行開發!)。
結束語 – 感謝您!
多年來,我們聽取了您對我們的遠端體驗以及最近對 VS Code 伺服器的回饋 – 我們非常感謝您分享持續塑造我們產品體驗的想法。我們很高興看到您如何使用我們最新的遠端功能以及您的回饋!
如果您想更深入地了解本部落格中描述的工具,我們在 Remote - Tunnels 擴充功能上建立了一個主題,同時更新了 VS Code 伺服器 和 code
CLI 文件,以反映最新的變更。
請隨時在我們的 vscode-remote-release GitHub 儲存庫中提交功能要求或錯誤,或者您可以在 Twitter 上推文給我們您的想法 @code。
祝您編碼愉快!
Brigit Murtaugh,@BrigitMurtaugh