cn 我们经常发布文档更新,此页面的翻译可能仍在进行中。有关最新信息,请访问英文文档。如果此页面上的翻译有问题,请告诉我们

为项目配置 Codespaces

您可以为仓库的每个新代码空间设置默认配置,以确保贡献者在其联机开发环境中拥有所需的所有工具和设置。

对仓库具有写入权限的人员可以创建或编辑默认代码空间配置。

代码空间可用于使用 GitHub Free 或 GitHub Pro 的用户帐户。 更多信息请参阅“GitHub 的产品”。

本文内容

注:Codespaces 目前是有限公测版,可能会有变动。 在公测期间,GitHub 不对 Codespaces 的可用性做任何保证。 有关加入公测的更多信息,请参阅“关于 Codespaces”。

关于默认代码空间配置

您可以为仓库创建默认代码空间配置,以确定任何人员为该仓库创建的每个新代码空间的环境。 配置定义一个可以包含框架、工具、扩展和端口转发的开发容器。

如果您没有在仓库中定义配置,GitHub 将创建一个具有基本 Linux 映像的代码空间。 基本 Linux 映像包括适用于 Python、Node.js、JavaScript、TypeScript、C++、Java、C#、F#、.NET Core、PHP、PowerShell、Go、Ruby 和 Rust 的工具。 有关基本 Linux 映像的更多信息,请参阅 microsoft/vscode-dev-containers 仓库。

也可为您的帐户创建的任何代码空间个性化代码空间环境的各个方面。 个性化可以包括 shell 首选项和其他工具。 dotfiles 个性化的应用先于仓库的默认码空间配置。 更多信息请参阅“个性化您帐户的 Codespaces”。

您可以使用项目类型的预建容器配置创建默认代码空间配置,也可以根据项目需要创建自定义配置。

Codespaces 使用配置文件 devcontainer.json 中包含的设置。 此文件可位于存储库的根目录或名为 .devtainer 的文件夹中。 如果文件位于仓库的根目录中,文件名必须以一个点开头:.devcontainer.json

您可以使用 devcontainer.json 为整个代码空间环境设置默认设置,包括 Visual Studio Code 编辑器,但您也可以在 .vscode/set.json 文件中设置编辑器特定的设置。

对仓库代码空间配置的更改只会应用到每个新的代码空间,而不影响任何现有的代码空间。

使用预建容器配置

您可以对 vscode-dev-containers 仓库中的 Visual Studio Code 使用任何预建容器配置。 预建容器定义包括特定项目类型的共同配置,可帮助您利用现有的配置快速开始使用,配置中已经有适当的容器选项、Visual Studio Code 设置和应该安装的 Visual Studio Code 扩展。

  1. 克隆或下载 vscode-dev-containers 仓库。
  2. vscode-dev-containers 仓库中,导航到 containers 文件夹,然后选择符合项目需求的容器配置。 我们将使用 Node.js & JavaScript 容器配置作为示例。
  3. .devcontainer 文件夹从 Node.js & JavaScript 文件夹复制到项目仓库的根目录。
  4. 提交并推送新配置到 GitHub 上的项目仓库。

从包含 .devcontainer 文件夹的分支创建的每个新代码空间将根据文件夹内容进行配置。 更多信息请参阅“创建代码空间”。

创建自定义代码空间配置

如果任何预构建的配置都不能满足您的需要,您可以通过添加 devcontainer.json 文件来创建自定义配置。 此文件可位于存储库的根目录或名为 .devtainer 的文件夹中。 如果文件位于仓库的根目录中,文件名必须以一个点开头:.devcontainer.json

在该文件中,您可以使用支持的配置键来指定代码库环境的各个方面,例如要安装哪些 Visual Studio Code 扩展。

配置 Visual Studio Code 的编辑器设置时,有三个可用的作用域:工作区远程 [Codespaces]用户。 如果在多个作用域中定义了设置,工作区设置优先级最高,远程 [Codespaces] 次之,最后是用户

您可以在两个地方定义 Visual Studio Code 的默认编辑器设置。

  • .vscode/settings.json 中定义的编辑器设置在代码空间中用作 Workspace 范围的设置。
  • devcontainer.jsonsettings 键中定义的编辑器设置在代码空间中用作 Remote [Codespaces] 范围的设置。

支持的代码空间配置键

您可以在 devcontainer.json 中使用 Codespaces 支持的配置键。

常规设置

  • name
  • settings
  • extensions
  • forwardPorts
  • postCreateCommand

Docker、Dockerfile 或映像设置

  • image
  • dockerFile
  • context
  • containerEnv
  • remoteEnv
  • containerUser
  • remoteUser
  • mounts
  • runArgs
  • overrideCommand
  • dockerComposeFile

有关可用于 devcontainer.json 的设置的更多信息,请参阅 Visual Studio Code 文档中的 devcontainer.json 参考

此文档对您有帮助吗?

Privacy policy

帮助我们创建出色的文档!

所有 GitHub 文档都是开源的。看到错误或不清楚的内容了吗?提交拉取请求。

做出贡献

或, 了解如何参与。