跳至主要内容

在 GitHub Classroom 中使用 GitHub Codespaces

您可以在作业中将 GitHub Codespaces 设为首选编辑器,为学生提供基于浏览器的 Visual Studio Code 环境,只需一次点击即可完成设置。

谁可以使用此功能?

作为课堂管理员的组织所有者可以为其组织启用 GitHub Codespaces,并将其集成到作业的支持编辑器中。有关课堂管理员的更多信息,请参阅 管理课堂

GitHub Codespaces 可在使用 GitHub Team 的组织中与 GitHub Classroom 配合使用。若想了解您是否符合免费升级至 GitHub Team 的资格,请参阅 作为教师申请 GitHub Education

关于 GitHub Codespaces

GitHub Codespaces 是一种即时的基于云的开发环境,使用容器为您提供常用的语言、工具和实用程序。GitHub Codespaces 也可以自定义,允许您创建统一的、针对项目所有用户的定制开发环境。请参阅 GitHub Codespaces 快速入门

在组织或企业中启用 GitHub Codespaces 后,用户可以从组织或企业仓库的任意分支或提交创建代码空间,并使用基于云的计算资源开始开发。您可以通过浏览器或本地的 Visual Studio Code 连接到代码空间。

要开始使用 GitHub Codespaces,请参阅 GitHub Codespaces 快速入门。有关创建代码空间的更多信息,请参阅 为仓库创建代码空间从模板创建代码空间。如果想返回已创建的代码空间,请参阅 打开现有代码空间。欲了解 GitHub Codespaces 的工作原理,请参阅 深入了解 GitHub Codespaces

在 GitHub Classroom 作业中将 GitHub Codespaces 设置为首选编辑器,对学生和教师都有益。对于使用借用设备或无法在本地设置 IDE 的学生来说,GitHub Codespaces 是理想选择,因为每个代码空间都是基于云的,无需本地配置。学生可以直接在浏览器中的 Visual Studio Code 为作业仓库启动代码空间,并立即开始开发,无需额外配置。

对于需要复杂环境设置的作业,教师可以为仓库的代码空间自定义 dev container 配置。这可确保学生创建代码空间时,自动使用教师预先配置的开发环境。有关 dev container 的更多信息,请参阅 dev container 介绍

注意

如果个人代码空间被停止并长时间未使用,它们会自动被删除。请参阅 配置代码空间自动删除

经认证的学生可免费使用 GitHub Codespaces,每月最高 180 核时,适用于个人账户。学生可用的每月存储和核时额度相当于 GitHub Pro 账户所包含的额度。详情请参阅 GitHub Codespaces 计费说明

注意

如果学生在 GitHub Classroom 的作业仓库中使用 GitHub Codespaces,使用费用将计入拥有该课堂的组织,而不会影响学生个人账户的使用量。

关于经认证教师的 Codespaces 教育福利

Codespaces 教育福利为经认证的教师提供每月免费使用 GitHub Codespaces 的额度,可在 GitHub Classroom 中使用。该免费额度估计足够支持 50 人的班级,每月完成 5 项作业,使用 2 核机器且每位学生存储 1 个代码空间。

注意

Codespaces 教育福利目前处于公开预览阶段,可能会有变动。在公开预览期间,如果超出免费额度,您的组织仍不会被收费。

要成为经认证的教师,您需要获得教育者或教师福利的批准。请参阅 作为教师申请 GitHub Education

确认您已是经认证教师后,前往 GitHub Education for Teachers 将组织升级至 GitHub Team。请参阅 GitHub 的产品

如果您有资格获得 Codespaces 教育福利,在为组织的 GitHub Classroom 启用 GitHub Codespaces 时,GitHub 会自动添加一项代码空间策略,将组织内所有代码空间的机器类型限制为 2 核机器,以帮助您充分利用免费额度。不过,您可以在组织设置中更改或删除这些策略。请参阅 限制机器类型访问

当 Codespaces 教育福利退出公开预览后,如果您的组织超出 GitHub Codespaces 的免费使用额度,超额部分将按计费标准收取费用。详情请参阅 GitHub Codespaces 计费说明

为您的组织启用 Codespaces

GitHub Codespaces 可在使用 GitHub Team 的组织中与 GitHub Classroom 配合使用。如果您有资格获得 Codespaces 教育福利,必须通过 GitHub Classroom 启用 GitHub Codespaces,而非直接在组织设置中启用。否则,组织将直接为所有代码空间使用付费。

在创建新课堂时为组织启用 Codespaces

  1. 登录 GitHub Classroom
  2. 在页面右侧,点击 New classroom
  3. 在组织列表中,点击您想用于课堂的组织。符合 GitHub Codespaces 条件的组织会有相应提示。您也可以选择创建新组织。请参阅 从头创建新组织
  4. 在 “Name your classroom” 页面,下方的 “Codespaces in your Classroom” 中,点击 Enable。请注意,这将为组织内的所有仓库和用户启用 GitHub Codespaces。
  5. 准备好创建新课堂后,点击 Create classroom

通过已有课堂为组织启用 Codespaces

  1. 登录 GitHub Classroom

  2. 在教室列表中,点击您想查看的教室。

  3. 在课堂名称下方,点击 设置

    Screenshot of the tabs in a classroom. The "Settings" tab is outlined in dark orange.

  4. 在 “GitHub Codespaces” 下,点击 Enable(启用)。这将为组织内所有仓库和用户启用 GitHub Codespaces,并添加一项代码空间策略,将所有代码空间的机器类型限定为 2 核机器。

您也可以使用上述相同的方法禁用组织的 GitHub Codespaces。请注意,这将为组织内的所有用户和仓库禁用 GitHub Codespaces。

配置作业以使用 Codespaces

要让学生在作业中使用 GitHub Codespaces,您可以将 GitHub Codespaces 设为该作业的支持编辑器。在创建新作业时,于 “Add your starter code and choose your optional online IDE” 页面下的 “Add a supported editor” 中,从下拉菜单选择 GitHub Codespaces

如果您为作业使用模板仓库,可以在仓库中定义 dev container,以自定义学生启动代码空间时可使用的工具和运行时。如果未定义 dev container,GitHub Codespaces 将使用默认配置,其中包含学生开发常用的多数工具。有关定义 dev container 的详细信息,请参阅 为仓库添加 dev container 配置

使用 GitHub Codespaces 启动作业

当学生打开作业时,仓库的 README 文件会包含老师对应使用的 IDE 的推荐。

学生可以通过点击 README 中的 Open in GitHub Codespace 按钮,或在作业仓库主页点击 Code 按钮,然后选择 Codespaces 选项卡。在 Codespaces 选项卡中,您可以选择已有代码空间或创建新代码空间。请参阅 为仓库创建代码空间

Screenshot of the assignment repository. The "Code" dropdown menu to launch a new codespace is expanded.

教师可以在作业概览页面查看每位学生的代码空间。您可以点击每行学生信息右侧的 Codespaces 图标来启动相应的代码空间。

Screenshot of the assignment overview. The Codespaces icon is outlined in dark orange.

通过浏览器连接代码空间时,自动保存功能会自动启用。如果您想将更改保存到仓库,需要提交更改并推送到远程分支。默认情况下,如果代码空间在 30 分钟内没有交互,它会超时并停止运行。您的数据会保留到上一次更改时的状态。有关代码空间生命周期的更多信息,请参阅 了解代码空间生命周期

© . This site is unofficial and not affiliated with GitHub, Inc.