<div dir="ltr"><div>I've just completed a rough prototype of a concept we've been calling 'nbexplode'. If you've wrestled with merge conflicts in notebooks kept in text-based VCSs, you might like to investigate it.<br><br><a href="https://github.com/takluyver/nbexplode/">https://github.com/takluyver/nbexplode/</a><br><br></div><div>Since current VCSs don't understand any structure within a file (beyond lines), the idea is to let the VCS know about the structure of a notebook by breaking it up into many files for separate cells and outputs. The VCS should then be smarter about merging separate changes. When you check out an exploded notebook, you can recombine it into a single .ipynb file to work with.<br><br></div><div>This is still sub-optimal, because filesystems (and therefore VCSs) have no notion of an ordered sequence. And it's probably more unwieldy for viewing diffs, because cells appear out of order.<br><br></div><div>Thomas<br></div></div>