Skip to main content

创建代码空间

您可以为仓库中的分支创建代码空间以便在线开发。

代码空间可用于使用 GitHub Team 和 GitHub Enterprise Cloud 的组织拥有的存储库。

代码空间可用于使用 GitHub Team 或 GitHub Enterprise Cloud 的组织。 更多信息请参阅“GitHub 的产品”。

关于代码空间的创建

可以在 GitHub.com 上、Visual Studio Code 中或使用 GitHub CLI 创建代码空间。 您创建的每个代码空间只有您才可以使用。 其他任何人都不能在您的代码空间中工作。

代码空间与仓库的特定分支相关联,且仓库不能为空。 每个仓库甚至每个分支可创建多个代码空间。 但是,每个个人帐户都有 10 个代码空间的限制。 如果您已达到上限,想要创建一个新的代码空间,必须先删除一个旧代码空间。 更多信息请参阅“删除代码空间”。

创建代码空间时,需要执行一些步骤并将您连接到开发环境。

  • 第 1 步:虚拟机和存储被分配到您的代码空间。
  • 第 2 步:创建容器并克隆仓库。
  • 第 3 步:您可以连接到代码空间。
  • 第 4 步:代码空间继续创建后设置。

有关创建代码空间时会发生什么的更多信息,请参阅“深潜”。

有关代码空间生命周期的更多信息,请参阅“代码空间生命周期”。

如果要将 Git 挂钩用于代码空间,则应在步骤 4 中使用 devcontainer.json 生命周期脚本设置挂钩,例如 postCreateCommand。 由于代码空间容器是在克隆仓库后创建的,因此在容器映像中配置的任何 git template directory 将不适用于代码空间。 在创建代码空间后,必须改为安装挂钩。 For more information on using postCreateCommand, see the devcontainer.json reference in the VS Code documentation.

使用 VS Code 在代码空间中开发时,您可以编辑代码、调试和使用 Git 命令。 更多信息请参阅 VS Code 文档

您可以在 github.com/codespaces 上查看您创建的每一个可用代码空间。

为了加快代码空间的创建速度,存储库管理员可以为存储库启用 Codespaces 预构建。 更多信息请参阅“关于 Codespaces 预构建”。

访问 Codespaces

代码空间可用于使用 GitHub Team 和 GitHub Enterprise Cloud 的组织拥有的存储库。

当您访问 Codespaces 时,在查看仓库时会看到 Code(代码)下拉菜单中的“Codespaces(代码空间)”选项卡。

在以下条件下,您可以访问代码空间:

  • 您是已启用 Codespaces 并设定支出限额的组织的成员。
  • 组织所有者已授予您访问 Codespaces。
  • 仓库归启用 Codespaces 的组织所有。

注意: 已使用个人 GitHub 帐户加入测试版的个人不会失去 Codespaces 访问权限,但个人的 Codespaces 将继续保留在测试版中。

组织所有者可以允许组织的所有成员创建代码空间,将代码空间创建限制为选定的组织成员,或者禁用代码空间的创建。 有关管理对组织内代码空间的访问的更多信息,请参阅“为组织中的用户启用代码空间”。

在组织中使用 Codespaces 之前,所有者或帐单管理员必须设定支出限额。 更多信息请参阅“关于代码空间的支出限额”。

如果想为您的个人帐户或其他用户拥有的仓库创建代码空间, 并且您有权在已启用 Codespaces 的组织中创建仓库, 您可以将用户拥有的仓库复刻到该组织,然后为该复刻创建一个代码空间。

创建代码空间

  1. 在 GitHub.com 上,导航到仓库的主页面。

  2. 在仓库名称下,使用“Branch(分支)”下拉菜单选择您要为其创建代码的分支。

    分支下拉菜单

  3. 单击 代码按钮,然后单击 Codespaces 选项卡。

    新建代码空间按钮

  4. 使用默认选项或在配置高级选项后创建代码空间:

    • 使用默认选项

      要使用默认选项创建代码空间,请单击 Create codespace on BRANCH(在 [分支] 上创建代码空间)

      (可选)在单击 Create codespace on BRANCH(在 [分支] 上创建代码空间)之前,可以单击按钮侧面的向下箭头以查看将用于代码空间的计算机类型。

      查看默认计算机类型

      注意:默认情况下,将选择对存储库有效的资源最少的计算机类型。

    • 配置选项

      要为代码空间配置高级选项,例如不同的计算机类型或特定 devcontainer.json 文件:

      1. 单击 Create codespace on BRANCH(在 [分支] 上创建代码空间)按钮侧面的向下箭头,然后单击 Configure and create codespace(配置并创建代码空间)

      2. 单击 Configure and create codespace(配置并创建代码空间)按钮。

      3. 在代码空间的选项页面上,从下拉菜单中选择首选选项。

        代码空间选项页

        注:

      4. 单击 Start session(开始会话)

将 GitHub.com 上的帐户连接到 GitHub Codespaces 扩展后,可以创建新的代码空间。 有关 GitHub Codespaces 扩展的详细信息,请参阅 VS Code Marketplace Marketplace

注意:目前,VS Code 不允许在创建代码空间时选择开发容器配置。 如果要选择特定的开发容器配置,请使用 GitHub Web 界面创建代码空间。 有关详细信息,请单击此页顶部的 Web browser(Web 浏览器)选项卡。

  1. 在 VS Code 中,从左侧边栏单击 Remote Explorer 图标。 Visual Studio Code 中的 Remote Explorer 图标

  2. 单击 Add(添加)图标:

    Codespaces 中的 Create new Codespace(创建新代码空间)选项

  3. 键入要在其中开发的存储库的名称,然后选择它。

    搜索仓库以创建新的 Codespaces

  4. 单击要在其中开发的分支。

    搜索分支以创建新的 Codespaces

  5. 单击您要使用的机器类型。

    新 Codespaces 的实例类型

    :Your choice of available machine types may be limited by a policy configured for your organization, or by a minimum machine type specification for your repository. For more information, see "Restricting access to machine types" and "Setting a minimum specification for codespace machines."

要了解有关 GitHub CLI 的更多信息,请参阅“关于 GitHub CLI”。

要创建新的代码空间,请使用 gh codespace create 子命令。

gh codespace create 

系统将提示您选择仓库、分支和计算机类型(如果有多个可用)。

注意:目前,GitHub CLI 不允许在创建代码空间时选择开发容器配置。 如果要选择特定的开发容器配置,请使用 GitHub Web 界面创建代码空间。 有关更多信息,请单击此页面顶部的“Web browser(Web 浏览器)”选项卡。

或者,您可以使用标志来指定部分或全部选项:

gh codespace create -r owner/repo -b branch -m machine-type 

owner/repo 替换为仓库标识符。 将 branch 替换为您希望在代码空间中最初检出的分支的名称或提交的完整 SHA 哈希。 如果使用 -r 标志而不使用 b 标志,则将从默认分支创建代码空间。

machine-type 替换为可用计算机类型的有效标识符。 标识符是字符串,例如:basicLinux32gbstandardLinux32gb。 可用的计算机类型取决于仓库、您的个人帐户和您的位置。 如果输入无效或不可用的计算机类型,则错误消息中将显示可用类型。 如果省略此标志,并且有多个计算机类型可用,系统将提示您从列表中选择一个计算机类型。

有关此命令的详细信息,请参阅 GitHub CLI 手册