使用 nbgitpuller 向用户分发材料#
目标#
使用 JupyterHub 时一个非常普遍的需求是,能够轻松地向学生分发学习材料/实验手册。
学生应能够
轻松获取最新版本的材料,包括教师对学生已有的材料进行的任何更新。
确信他们不会丢失任何工作。如果教师修改了学生也修改过的内容,则学生的修改绝不应被覆盖。
不必处理手动合并冲突或其他复杂操作。
教师应能够
使用现代协作版本控制工具来创作和存储他们的材料。这目前意味着使用 Git。
nbgitpuller 是一个 Jupyter 服务器扩展,有助于实现这些目标。本教程将引导您完成创建神奇的 nbgitpuller 链接的过程,您的 JupyterHub 用户可以点击该链接,从 git 仓库中获取最新版本的材料。
先决条件#
一个使用 The Littlest JupyterHub 设置的 JupyterHub
一个包含要分发的材料的 git 仓库
步骤 1:生成 nbgitpuller 链接#
生成链接的最快方法是使用 nbgitpuller.link,但 nbgitpuller 项目文档中描述了其他选项。
步骤 2:用户点击 nbgitpuller 链接#
通过某种方式将链接发送给您的用户——电子邮件、Slack、在墙上发布一个缩短版本(也许使用 bit.ly),或者将其放在您的课程大纲页面上(例如 加州大学伯克利分校的 data8)。无论哪种方式对您都适用 :)
当用户点击链接时,如果他们尚未登录,将被要求登录到 hub。
用户将看到一个进度条,显示 git 仓库正在获取以及正在执行任何所需的自动合并。
用户现在将被重定向到 URL 中指定的笔记本!
此工作流程让用户可以直接进入您指定的笔记本,而无需过多了解 git 或 JupyterHub 界面。