跳至主要内容

在 JetBrains IDE 中使用 GitHub Codespaces

您可以使用 JetBrains Gateway 连接到您的 codespace,并在您最喜欢的 JetBrains IDE 中工作。

说明

  • 目前,在 JetBrains IDE 中使用 GitHub Codespaces 处于公开测试阶段,可能会发生变化。
  • 要在 JetBrains IDE 中使用 Codespace,您必须使用 JetBrains Gateway 的 2023.3.* 或 2024.1.* 版本。

关于 JetBrains IDE 中的 Codespaces

如果您使用 JetBrains IDE 来处理代码,您可以利用 Codespace 中的工作方式。您可以通过使用 JetBrains Gateway 应用程序来实现。

安装 JetBrains Gateway 后,您可以将 JetBrains 设置为 Codespaces 的默认编辑器。如果您这样做,那么无论何时您从 GitHub.com 打开 Codespace,JetBrains Gateway 都会启动,让您选择 JetBrains IDE 并连接到 Codespace。

在 Codespace 中工作时,您会在本地计算机上使用 JetBrains 瘦客户端应用程序。这为您的选择的完整 JetBrains IDE 提供了图形界面,该界面运行在托管 Codespace 的远程虚拟机上。即使本地安装了完整的 JetBrains IDE,也会始终使用瘦客户端。任何本地 JetBrains IDE 设置都会被导入并由瘦客户端使用。

注意: JetBrains Gateway 中只有现有的 Codespace 可用。您可以在 GitHub.com 中创建 Codespace,也可以使用 GitHub CLI 创建。有关更多信息,请参阅“为存储库创建 Codespace”。

JetBrains 远程开发连接过程

在 JetBrains IDE 中使用 Codespace 的基本过程如下。

  • 在 JetBrains Gateway 应用程序中,您选择一个活动的或已停止的 Codespace。
  • 然后,您选择要使用的 JetBrains IDE。
  • 然后,所选的 JetBrains IDE 将下载到托管 Codespace 和源代码的远程虚拟机上。
  • 然后,JetBrains 瘦客户端应用程序将下载到您的本地计算机并启动。
  • 客户端应用程序连接到完整的后端 IDE。
  • 您可以在客户端应用程序中以与在本地环境中相同的方式处理代码。

先决条件

要在 JetBrains IDE 中使用 Codespace,您需要

  • 有效的 JetBrains 许可证。
  • JetBrains Gateway 应用程序,版本 2023.3.* 或 2024.1.*。
  • 一个运行在至少有 4 个内核的虚拟机上的现有 Codespace。Codespace 还必须运行 SSH 服务器。有关更多信息,请参阅“运行 SSH 服务器的 Codespace”。

JetBrains 许可证

您必须拥有支持您在 JetBrains Gateway 中选择的 IDE 的 JetBrains 许可证。

JetBrains Gateway

您可以从 JetBrains Toolbox 应用程序安装和更新 JetBrains Gateway。

  1. 下载并安装 JetBrains Toolbox

  2. 打开 JetBrains Toolbox。

  3. 在可用工具列表中找到 **Gateway**。

    Screenshot of the JetBrains Toolbox with "Gateway" at the bottom of the list of applications. Each application has an "Install" button next to it.

  4. 在 **Gateway** 右侧,单击省略号 (**...**),然后单击 **可用版本**。

  5. 在版本列表中,在支持的版本(请参阅“先决条件”)旁边,单击 **安装**。

运行 SSH 服务器的 Codespace

您必须拥有一个现有的 Codespace 来连接,并且托管 Codespace 的虚拟机必须至少有 4 个核心。您可以在 GitHub.com、Visual Studio Code 或使用 GitHub CLI 创建 Codespace。有关更多信息,请参阅“为存储库创建 Codespace”。

您连接到的 Codespace 必须运行 SSH 服务器。默认的开发容器映像包含一个 SSH 服务器,该服务器会自动启动。如果您的 Codespace 不是从默认映像创建的,您可以通过将以下内容添加到 devcontainer.json 文件中的 features 对象来安装和启动 SSH 服务器。

"features": {
    // ...
    "ghcr.io/devcontainers/features/sshd:1": {
        "version": "latest"
    },
    // ...
}

有关 devcontainer.json 文件和默认容器映像的更多信息,请参阅“开发容器简介”。

注意:有关通过 SSH 连接到 Codespace 的帮助,请参阅“GitHub Codespaces 客户端疑难解答”。

设置 JetBrains Gateway

首次将 JetBrains Gateway 用于 GitHub Codespaces 时,您必须安装 Codespaces 插件。您还必须允许 JetBrains Gateway 使用您的 GitHub 帐户访问 GitHub.com。

  1. 打开 JetBrains Toolbox 应用程序。

  2. 在已安装工具列表中,单击 **Gateway**。

  3. 在 **安装更多提供商** 下,单击 GitHub Codespaces 的 **安装** 链接。

    Screenshot of the "Welcome to JetBrains Gateway" page, with  "GitHub Codespaces" listed under "Install More Providers."

  4. 点击连接到 Codespace

    Screenshot of the Gateway with the "Connect to Codespaces" button.

  5. 首次连接时,系统会提示您选择是否允许 GitHub 收集匿名使用数据,以改进功能和用户体验。点击允许拒绝

    如果需要,您可以在 JetBrains Gateway 设置中的 GitHub Codespaces 插件设置中更改您的选择。

  6. 在“欢迎使用 JetBrains Gateway”对话框中,点击使用 GitHub 登录

  7. 点击一次性代码旁边的图标将其复制。

    Screenshot of a one-time login code. The copy icon beside the code is highlighted with a dark orange outline.

  8. 点击登录代码下方的登录链接。

  9. 如果您当前未登录 GitHub,则会显示登录页面。

    • 输入您的详细信息并点击登录
    • 验证您的身份验证,例如输入双因素身份验证代码。
  10. 在“设备激活”页面上,粘贴复制的代码并点击继续

  11. 如果您属于组织,则会显示“单点登录到您的组织”页面。点击您要授权 JetBrains Gateway 访问的组织旁边的授权,然后点击继续

  12. 在“授权 GitHub Codespaces for JetBrains”页面上,点击授权 GitHub

  13. 返回 JetBrains Gateway 应用程序,从您当前活动或已停止的 codespace 列表中打开一个 codespace,请参阅以下步骤 3。

在您的 JetBrains IDE 中打开 codespace

如果您已将 JetBrains Gateway 设置为默认编辑器,则当您从 GitHub.com 打开 codespace 时,Gateway 会自动启动。

如果 JetBrains Gateway 不是您的默认编辑器,您仍然可以通过访问 github.com/codespaces 上的“您的 codespace”页面,然后点击您要打开的 codespace 右侧的省略号 (...) 在 JetBrains 中打开 codespace。有关更多信息,请参阅“打开现有 codespace”。

或者,您也可以打开 JetBrains Gateway 并选择一个现有 codespace,如以下步骤所述。

  1. 打开 JetBrains Gateway 应用程序。

  2. 点击连接到 Codespaces

    Screenshot of the JetBrains Gateway home page, showing the "Connect to Codespaces" button.

  3. 在“您的 Codespaces”列表中,点击您要使用的 codespace。

    Screenshot of the "Your Codespaces" list in the JetBrains Gateway.

  4. 在“可用 IDE”列表中,点击您要使用的 JetBrains IDE。网关将在您下次连接到代码空间时记住您的选择。

    Screenshot the "Select IDE" dropdown list in the JetBrains Gateway. The mouse pointer is pointing to "IntelliJ IDEA."

  5. 点击连接

    说明:

    • 如果您选择 Rider 作为您的 JetBrains IDE 并且存储库包含多个解决方案文件,则会显示“设置解决方案路径”对话框,提示您选择要使用的解决方案。从下拉菜单中选择一个解决方案文件,然后点击确定

      如果存储库没有解决方案文件,Rider 将在基本项目目录视图中打开,并且功能有限。例如,您将无法获得特定于 .NET 的代码导航。如果存储库中只有一个解决方案文件,它将被自动使用,而不会显示提示。有关更多信息,请参阅 JetBrains 文档中的“创建和打开项目和解决方案”。

    • 如果您正在运行防火墙,那么您第一次连接到远程资源时,可能会提示您允许 JetBrains Gateway 通过您的网络进行通信。

    您第一次连接到代码空间时,后端 IDE 将被下载到远程机器。这可能需要几分钟。下次您连接到同一个代码空间时,此步骤将不再需要,从而使连接过程更快。

    然后启动后端 IDE。同样,如果您重新连接到已运行的后端 IDE,则此步骤在将来将不再需要。

    然后启动客户端应用程序。

进一步阅读