I used this and can recommend it, since it also shows you the outputs of different versions.
But as another commenter said, when I got to the point of needing to diff my notebooks, I realized that I could move some of the code into separate python files.
If you're a business analyst, one use case is if you need to process some data e.g. every quarter, but the data changes a bit every time so you need to update the approach slightly (e.g. data structure changes, new mapping rules). With nbdiff it's easy to keep track of changes while having some helpful visualizations in the same file.
I'm not sure if this is a standard setup or if I copy-pasted from some blog post, but overall it's working great.
There are some issues with it, like (1) will unnecessarily mark graphics as changed (e.g. re-generated figures from the same code), and (2) the diffs become less meaningful if large chunks of cells were moved, but overall it works great.
If it supported a `--color-words` option then it would be super helpful for seeing only which words have changes, instead of whole lines changed (very good for long paragraphs of Markdown text).
But as another commenter said, when I got to the point of needing to diff my notebooks, I realized that I could move some of the code into separate python files.
If you're a business analyst, one use case is if you need to process some data e.g. every quarter, but the data changes a bit every time so you need to update the approach slightly (e.g. data structure changes, new mapping rules). With nbdiff it's easy to keep track of changes while having some helpful visualizations in the same file.