跳至主要内容

GitHub Codespaces 概述

本指南介绍了 GitHub Codespaces,并提供了有关其工作原理和使用方法的详细信息。

什么是 Codespace?

Codespace 是一种托管在云中的开发环境。您可以通过将配置文件提交到您的仓库(通常称为配置即代码)来自定义您的 GitHub Codespaces 项目,这将为您的项目的所有用户创建可重复的 Codespace 配置。请参阅“开发容器简介”。

您创建的每个 Codespace 都由 GitHub 托管在 Docker 容器中,并在虚拟机上运行。您可以从各种虚拟机类型中进行选择,从 2 核、8 GB RAM 和 32 GB 存储,到 32 核、64 GB RAM 和 128 GB 存储。

默认情况下,Codespace 开发环境是从包含各种常用语言和工具的 Ubuntu Linux 镜像创建的,但您可以使用基于您选择的 Linux 发行版的镜像并将其配置为满足您的特定需求。无论您的本地操作系统是什么,您的 Codespace 都将在 Linux 环境中运行。Windows 和 macOS 不支持作为远程开发容器的操作系统。

您可以从浏览器、Visual Studio Code、JetBrains Gateway 应用程序或使用 GitHub CLI 连接到 Codespaces。连接后,您将置于 Docker 容器内。您可以访问外部 Linux 虚拟机主机的权限有限。

Diagram showing the relationship between a code editor and a codespace running on an Azure virtual machine.

GitHub Codespaces 的优势

选择在 Codespace 中工作的原因包括

  • 使用预配置的开发环境 - 您可以在专门为仓库配置的开发环境中工作。它将包含您在该项目上工作所需的所有工具、语言和配置。每个在 Codespace 中处理该仓库的人员都将拥有相同的环境。这减少了环境相关问题出现的可能性,并且难以调试。每个仓库都可以拥有设置,为贡献者提供一个现成的、适合用途的环境,并且您本地机器上的环境将保持不变。
  • 访问您需要的资源 - 您的本地计算机可能没有运行项目所需的处理能力或存储空间。GitHub Codespaces 允许您在具有充足资源的机器上远程工作。

  • 随时随地工作 - 您只需要一个网络浏览器。您可以在自己的电脑、朋友的笔记本电脑或平板电脑上使用 Codespace。打开您的 Codespace,并在不同的设备上继续未完成的工作。
  • 选择您的编辑器 - 在浏览器中使用 VS Code 网页客户端,或从一系列基于桌面的应用程序中进行选择。
  • 处理多个项目 - 您可以使用多个 Codespace 来处理不同的项目,或处理同一存储库的不同分支,将您的工作隔离开来,避免为一项工作所做的更改意外影响您正在处理的其他工作。
  • 与队友结对编程 - 如果您在 VS Code 中使用 Codespace,则可以使用 Live Share 与团队中的其他人协作工作。请参阅“在 Codespace 中协作工作”。
  • 从 Codespace 发布您的 Web 应用 - 从您的 Codespace 转发端口,然后共享 URL,以允许队友在您在拉取请求中提交这些更改之前试用您对应用程序所做的更改。
  • 试用框架 - 如果您想学习新的框架,GitHub Codespaces 可以缩短设置时间。只需从 快速入门模板 中创建一个 Codespace。

使用 GitHub Codespaces

要开始使用基于云的计算资源进行开发,您可以从模板或存储库中的任何分支或提交创建 Codespace。当您从模板创建 Codespace 时,您可以从空白模板开始,或选择适合您正在执行的工作的模板。

要开始使用 GitHub Codespaces,请参阅“GitHub Codespaces 快速入门”。有关创建 Codespace 的更多信息,请参阅“为存储库创建 Codespace”或“从模板创建 Codespace”。如果您想返回到已创建的 Codespace,请参阅“打开现有的 Codespace”。要详细了解 GitHub Codespaces 的工作原理,请参阅“深入了解 GitHub Codespaces”。

使用您的个人帐户拥有的 Codespaces

所有个人 GitHub 帐户都包含每月免费使用 GitHub Codespaces 的配额,包含在免费或专业版计划中。您可以开始在您的个人帐户上使用 GitHub Codespaces,无需更改任何设置或提供付款信息。

如果您从组织拥有的存储库创建 Codespace,则 Codespace 的使用将计费给组织(如果组织已为此配置),或计费给您的个人帐户。

您可以通过提供付款信息并设置支出限额,继续使用超过每月包含的存储和计算使用量的 GitHub Codespaces。请参阅“关于 GitHub Codespaces 的计费”。

使用组织拥有的 Codespaces

GitHub 团队和 GitHub Enterprise 计划的组织所有者可以为其成员和协作者使用 GitHub Codespaces 付费。这适用于从组织拥有的存储库创建的 Codespace。请参阅“选择谁拥有和支付组织中的 Codespaces”。您可以为组织或企业帐户上使用 GitHub Codespaces 设置支出限额。请参阅“管理 GitHub Codespaces 的支出限额”。

如果 Codespace 的使用将计费给组织或企业,则在创建 Codespace 时会显示此信息。请参阅“为存储库创建 Codespace”。计费给组织或其父级企业的 Codespace 由组织拥有,并且可以由组织所有者删除。请参阅“删除 Codespace”。

您从组织拥有的存储库创建 Codespace 的能力取决于几个因素,包括存储库的可见性和组织或其父级企业的设置。有关更多信息,请参阅“Codespace 创建和删除故障排除”。

自定义 GitHub Codespaces

要自定义 Codespace 中的运行时和工具,您可以为您的存储库创建一到多个开发容器配置。将开发容器配置添加到存储库允许您定义一系列不同的开发环境,这些环境适合人们在您的存储库中执行的工作。

如果您从没有任何开发容器配置的存储库创建 Codespace,GitHub Codespaces 会将您的存储库克隆到包含许多工具、语言和运行时环境的默认开发容器映像的环境中。如果您从模板创建 Codespace,则您可能会在默认映像之上开始进行一些初始配置。请参阅“开发容器简介”。

您可以使用公共的 dotfiles 存储库个性化 Codespace 环境的各个方面。您可以使用 dotfiles 设置 shell 别名和首选项,或安装您喜欢的工具的个人首选项。如果您在浏览器或 Visual Studio Code 中使用 GitHub Codespaces,则可以使用 设置同步 为您的 Codespace 编辑器提供与您在本地安装的 Visual Studio Code 中设置的相同的设置、键盘快捷键、代码段和扩展。

请参阅“自定义您的 Codespace”。

Codespaces 计费

有关 GitHub Codespaces 的定价、存储和使用信息,请参阅“关于 GitHub Codespaces 的计费”。

注意

您必须在您的个人、组织或企业帐户上设置一个非零支出限额,然后才能对帐户使用 GitHub Codespaces 计费。

默认情况下,所有帐户的 GitHub Codespaces 支出限额均为 0 美元。如果这样做会给您的个人、组织或企业帐户带来可计费的费用,则会阻止创建新的 Codespace 或打开现有的 Codespace。对于个人帐户,如果您有权创建 Codespace,则只要帐户未达到其每月包含使用量的限制,您就可以这样做。对于组织和企业,默认支出限额意味着,要允许人们创建计费给组织或其父级企业的 Codespace,必须将限额更改为高于 0 美元的值。

GitHub Codespaces 的费用始终按月计费,即使您的帐户以其他方式按年计费也是如此。有关组织所有者和账单管理员如何管理组织的 GitHub Codespaces 支出限额的信息,请参阅“管理 GitHub Codespaces 的支出限额”。