如何进行nbgitpuller的分析

本篇文章为大家展示了如何进行nbgitpuller的分析,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。

    nbgitpuller (notebook git puller),可以通过点击一个简单的链接,就将git仓库中的内容发布给用户,它能够确保用户永远不会直接接触到git。主要与JupyterHub一起使用,但也可以在用户的本地笔记本电脑上工作。什么样的情况下会使用到nbgitpuller?

    • 在教学中使用JupyterHub,并希望有一种简单的方式来向学生分发材料,而不需要他们了解什么是git

    • 可以通过其他途径收集作业,因为通过nbgitpuller拉取的项目不能通过Git方式进行push

  • 什么样的情况下不应该使用nggitpuller?

    • 当使用JupyterHub在本地进行编程并推送到Git仓库时,应该直接使用Git因为如果用git推送而用nbgitpuller拉取的话,nbgitpuller的假设和设计会带来意想不到的惊喜

    总而言之,nggitpuller只能用于pull拉取和分发材料,而不能处理git push操作!
  • nbgitpuller的安装

    可以在安装了Jupyter Notebook的同一个环境中,用pip从PyPI安装nbgitpuller

pip install nbgitpuller
  • nbgitpuller的使用方法

    关于nbgitpuller的用法,在上一节中有仔细介绍,此处不再赘述

  • nbgitpuller的冲突合并规则

    nbgitpuller 试图确保点击链接的终端用户无需手动与 git repo 进行交互,这就要求它在处理学生和老师的不同版本材料之间的合并操作时,要处理各种冲突问题

    下面是nbgitpuller处理合并冲突的几个原则:

  • 1 教师修改了文件,但学生没有修改

    • 学生的修改不做变化,教师的修改则直接拉取存储

    • 最常见的情况,即教师向git repo中添加了新的文件或者目录

  • 2 学生和教师修改了同一文件的不同位置

    • 与情况1相似,学生的修改不做变化,教师的修改直接拉取后写入

  • 3 学生和教师修改了同一文件的相同位置

    • 保留学生的修改,nbgitpuller的最大准则就是永远保留学生的作业操作

  • 4 学生在本地删除了文件,而教师没有

    • 如果学生在本地删除了一个文件,但该文件仍然存在于远程repo中,那么远程repo中的文件会被拉到学生的目录中

    • 这就实现了学生在对一个文件做了很多修改后,想 "重新开始 "的情况

    • 他们可以简单地删除这个文件,再点击 nbgitpuller 链接,然后得到一个新的副本

  • 5 学生在本地创建了新文件,而教师也创建了同名文件

    • 例如,学生在nbgitpuller拉了一个仓库的目录下手动创建了一个名为Untitled141.ipynb的文件

    • 在之后的某个时刻,教师也创建了一个名为 Untitled141.ipynb 的文件,并将其推送到 repo 中

    • 当学生接下来点击nbgitpuller链接时,我们要确保不会破坏学生的工作

    • 由于它们是在两个不同的地方创建的,所以它们可合并的可能性很低

    • 所以我们将学生的文件重命名,并将教师的文件拉下来

    • 所以学生的Untitled141.ipynb文件将重命名为Untitled141_<timestamp>.ipynb,而教师的文件将保留在Untitled141.ipynb

上述内容就是如何进行nbgitpuller的分析,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注蜗牛博客行业资讯频道。

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:niceseo99@gmail.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

评论

有免费节点资源,我们会通知你!加入纸飞机订阅群

×
天气预报查看日历分享网页手机扫码留言评论Telegram