Jupyter Notebook和Git无缝集成方案( 二 )
----Jupyter Notebook和Git无缝集成方案//---- http://
Jupyter Notebook是一个强大的在线交互式编程平台 , 还是一种强大的文档处理平台 。 使用Jupyter Notebook制作教程和其他文档的方式非常方便 , 尤其是在文档编辑、代码处理和执行结果的交叉展现;对图形以及LaTeX编码的格式和公式处理也提供了很好的支持 。 甚至可以用来生成文档 , PPT展现等 。
但是Jupyter Notebook存在不必要的运行时缓存数据在于Git集成时会造成差异干扰 。 本文我们介绍一种通过jq单行脚本快速处理 , 并制作成强大的git clean fileter , 实现从Jupyter Notebook文件中删除不需要的缓存数据来实现Jupyter Notebook和Git的无缝集成 。
缘起
强大的Jupyter Notebook给我们使用带来便利 , 其基于.ipynb的项目保存和导入是个非常好的功能 , 可以让我们重现 , 以及和别人分享操作和界面 。 但是其基于所见即所得的编辑器存在一个一直以来共性的问题:其文档文件往往包含的内容不止是文本 , 因此很难用基于纯文本管理的版本控制工具处理 。 Jupyter 本身的.ipynb格式与纯文本格式的差异也不太大 , ipynb格式只一种自定义的JSON数据结构 , 偶尔还有嵌入的对图像和其他二进制数据base-64编码的blob数据 。 按理来说 , Git之类的VCS处理他们是绰绰有余的 。 但是其中base-64编码的blob数据较长时对其git diff比较变化差异时候就是个问题 。 尤其是需要多人协作的一个变化频繁的项目就是个很棘手的问题 。
推荐阅读
- 工作室|Unity收购《指环王》特效工作室Weta Digital,称为布局元宇宙
- 杀手3|砸9.19亿英镑!腾讯收购英国游戏开发商Sumo Digital
- GitHub 发布 2019 年度透明度报告:披露删除内容理由
- 微软CEO或将访问印度,并宣布印度成立GitHub子公司
- Galaxy Digital执行官:“流动性”推动了比特币令人震惊的上涨
- 外媒:微软宣布在印度成立GitHub子公司
- DigiTimes:苹果供应链正加紧生产iPhone SE 2,但iPhone 12将落后于计划
- GitHub大火的中文仓库:没有代码,star过万
- 连登 GitHub TOP 榜,中国开发者在行动!
- Java排名前5位:GitHub上最常用的Java库