GitHub 为项目配置 Codespaces
您可以为仓库的每个新代码空间设置默认配置,以确保贡献者在其联机开发环境中拥有所需的所有工具和设置。
对仓库具有写入权限的人员可以创建或编辑默认代码空间配置。
代码空间可用于使用 GitHub Free 或 GitHub Pro 的用户帐户。 更多信息请参阅“GitHub 的产品”。
注:代码空间 目前是有限公测版,可能会有变动。 在公测期间,GitHub 不对 代码空间 的可用性做任何保证。 有关加入公测的更多信息,请参阅“关于 代码空间”。
关于默认代码空间配置
您可以为仓库创建默认代码空间配置,以确定任何人员为该仓库创建的每个新代码空间的环境。 配置可以包括框架、工具、扩展和端口转发。
也可为您的帐户创建的任何代码空间个性化代码空间环境的各个方面。 个性化可以包括 shell 首选项和其他工具。 dotfiles
个性化的应用先于仓库的默认码空间配置。 更多信息请参阅“个性化您帐户的 代码空间”。
您可以使用项目类型的预建容器配置创建默认代码空间配置,也可以根据项目需要创建自定义配置。
代码空间 使用仓库根目录下或 .devcontainer
文件夹下 devcontainer.json
文件包含的设置。 您可以使用 devcontainer.json
为整个代码空间环境设置默认设置,包括 Visual Studio Code 编辑器,但您也可以在 .vscode/set.json
文件中设置编辑器特定的设置。
对仓库代码空间配置的更改只会应用到每个新的代码空间,而不影响任何现有的代码空间。
使用预建容器配置
您可以对 vscode-dev-containers
仓库中的 Visual Studio Code 使用任何预建容器配置。 预建容器定义包括特定项目类型的共同配置,可帮助您利用现有的配置快速开始使用,配置中已经有适当的容器选项、Visual Studio Code 设置和应该安装的 Visual Studio Code 扩展。
- 克隆或下载
vscode-dev-containers
仓库。 - 在
vscode-dev-containers
仓库中,导航到containers
文件夹,然后选择符合项目需求的容器配置。 We'll use the Node.js & JavaScript container configuration as an example. - 从
Node.js & JavaScript
文件夹中,将.devcontainer
文件夹复制到项目仓库的根目录。 - 提交并推送新配置到 GitHub 上的项目仓库。
从包含 .devcontainer
文件夹的分支创建的每个新代码空间将根据文件夹内容进行配置。 更多信息请参阅“创建代码空间”。
创建自定义代码空间配置
如果没有预建配置满足您的需求,可通过将 devcontainer.json
文件添加到仓库根目录或.devcontainer
文件夹来创建自定义配置。 在该文件中,您可以使用支持的配置键来指定代码库环境的各个方面,例如要安装哪些 Visual Studio Code 扩展。
配置 Visual Studio Code 的编辑器设置时,有三个可用的作用域:工作区、远程 [Codespaces]和用户。 如果在多个作用域中定义了设置,工作区设置优先级最高,远程 [Codespaces] 次之,最后是用户。
您可以在两个地方定义 Visual Studio Code 的默认编辑器设置。
.vscode/settings.json
中定义的编辑器设置在代码空间中用作 Workspace 范围的设置。devcontainer.json
的settings
键中定义的编辑器设置在代码空间中用作 Remote [Codespaces] 范围的设置。
支持的代码空间配置键
您可以在 devcontainer.json
中使用 代码空间 支持的配置键。
常规设置
name
settings
extensions
forwardPorts
devPort
postCreateCommand
Docker、Dockerfile 或映像设置
image
dockerFile
context
containerEnv
remoteEnv
containerUser
remoteUser
updateRemoteUserUID
mounts
workspaceMount
workspaceFolder
runArgs
overrideCommand
shutdownAction
dockerComposeFile
有关可用于 devcontainer.json
的设置的更多信息,请参阅 Visual Studio Code 文档中的 devcontainer.json 参考。