创建 Codespaces
无权创建 Codespace
并非所有代码库都提供 GitHub Codespaces。如果未显示创建 Codespace 的选项,则该代码库可能不支持 GitHub Codespaces。
如果您个人帐户仍有 GitHub Codespaces 的每月包含用量,或者您已设置付款方式和支出限额,则可以为任何公共代码库创建 Codespace。
您还可以为任何您至少具有读取权限的私有代码库创建 Codespace,前提是该私有代码库由个人帐户拥有。如果代码库是私有的且由组织拥有,则根据组织或其父级企业的设置,您可能能够或无法为该代码库创建 Codespace。
如果您无法为代码库创建 Codespace,这可能是由于以下组织或企业设置之一。
- 组织和企业所有者可以选择哪些用户可以访问组织的私有代码库中的 GitHub Codespaces。有关更多信息,请参阅“为您的组织启用或禁用 GitHub Codespaces”。
- 组织和企业所有者可以为部分或全部组织的私有仓库禁用分叉。如果您只有某个仓库的读取权限,并且无法分叉它,则无法为此仓库创建 Codespace。更多信息,请参阅“管理组织的分叉策略”。
有关其他可能影响您是否可以创建 Codespace 的组织和企业设置信息,请参阅“为您的组织启用或禁用 GitHub Codespaces”。
有关个人帐户的包含使用情况以及设置支出限额的更多信息,请参阅“关于 GitHub Codespaces 的计费”和“管理 GitHub Codespaces 的支出限额”。
Codespace 创建后未打开
如果您创建了 Codespace 但它未打开
- 尝试重新加载页面,以防出现缓存或报告问题。
- 访问您的 GitHub Codespaces 页面:https://github.com/codespaces 并检查新 Codespace 是否已列在其中。该过程可能已成功创建 Codespace,但未能向您的浏览器报告。如果列出了新的 Codespace,您可以直接从此页面打开它。
- 重试为仓库创建 Codespace,以排除瞬态通信故障。
如果您仍然无法为提供 GitHub Codespaces 的仓库创建 Codespace,您可能需要联系支持人员。更多信息,请参阅“与 GitHub Codespaces 支持人员合作”。
Codespace 创建失败
如果 Codespace 创建失败,则可能是由于云中的临时基础架构问题造成的——例如,为 Codespace 预配虚拟机出现问题。失败的另一个不太常见的原因是容器构建时间超过一小时。在这种情况下,构建将被取消,并且 Codespace 创建将失败。
注意
未成功创建的 Codespace 将永远无法使用,应将其删除。更多信息,请参阅“删除 Codespace”。
如果您创建了 Codespace 但创建失败
-
查看 GitHub 的状态页面,了解任何活动事件。
-
访问您的 GitHub Codespaces 页面,删除 Codespace,然后创建一个新的 Codespace。
-
如果容器正在构建,请查看正在流式传输的日志,并确保构建没有卡住。构建时间超过一小时的容器将被取消,导致创建失败。
这种情况发生的一种常见情况是,如果您正在运行提示用户输入并等待答案的脚本。如果是这种情况,请移除交互式提示,以便构建可以非交互式地完成。
注意
查看构建期间的日志
-
**在浏览器中**,如果构建过程的初始步骤花费的时间超过几秒钟,则会显示“设置您的 Codespace”页面。点击**查看日志**。
-
**在 VS Code 桌面应用程序中**,点击显示的“设置远程连接”弹出消息中的**正在构建 Codespace**。
日志消息将打印到 VS Code 中的终端。
- 如果您有一个构建时间很长的容器,请考虑使用预构建来加快 Codespace 创建速度。更多信息,请参阅“配置预构建”。
删除 Codespaces
Codespace 只能由以下人员删除:
- 创建 Codespace 的人
- 组织拥有的 Codespace 的组织所有者
- 保留期结束时自动删除
更多信息,请参阅“删除 Codespace”和“配置 Codespaces 的自动删除”。
容器存储
创建 Codespace 时,它具有有限的存储空间,随着时间的推移,您可能需要释放空间。尝试在 GitHub Codespaces 终端中运行以下任何命令以释放存储空间。
- 使用
sudo apt autoremove
删除不再使用的软件包。 - 使用
sudo apt clean
清理 apt 缓存。 - 使用
sudo find / -printf '%s %p\n'| sort -nr | head -10
查看 Codespace 中的前 10 个最大文件。 - 删除不需要的文件,例如构建工件和日志。
一些更具破坏性的选项
- 使用
docker system prune
删除未使用的 Docker 镜像、网络和容器(如果您想删除所有镜像,请附加-a
,如果您想删除所有卷,请附加--volumes
)。 - 从工作树中删除未跟踪的文件:
git clean -i
。
配置
如果您的开发容器配置更改导致容器错误,您的 Codespace 将以恢复模式运行,并且您将看到一条错误消息。
This codespace is currently running in recovery mode due to a container error.
查看创建日志并根据需要更新开发容器配置。更多信息,请参阅“GitHub Codespaces 日志”。
然后,您可以尝试重新启动 Codespace 或重新构建容器。有关重新构建容器的更多信息,请参阅“开发容器简介”。