nbdime provides tools for diffing and merging Jupyter notebooks. Jupyter notebooks are useful, rich media documents stored in a plain text JSON format. This format is relatively easy to parse. However, primitive line-based diff and merge tools do not handle well the logical structure of notebook documents. nbdime, on the other hand, provides “content-aware” diffing and merging of Jupyter notebooks. It understands the structure of notebook documents. Therefore, it can make intelligent decisions when diffing and merging notebooks. Many of us who are writing and sharing notebooks do so with git and GitHub. Git doesn’t handle diffing and merging notebooks very well by default, but you can configure git to use nbdime and it will get a lot better.
Features
- nbdime Jupyter Notebook Diff and Merge tools
- nbdiff compare notebooks in a terminal-friendly way
- nbmerge three-way merge of notebooks with automatic conflict resolution
- nbdiff-web shows you a rich rendered diff of notebooks
- nbmerge-web gives you a web-based three-way merge tool for notebooks
- nbshow present a single notebook in a terminal-friendly way