4 ms·
No it just uses normal git in the normal way. The simple trick is to use a jupyter-native git merge driver, so that merges are done at a cell level instead of a
by jph00 4y ago
No it just uses normal git in the normal way. The simple trick is to use a jupyter-native git merge driver, so that merges are done at a cell level instead of a line level.
Also, unneeded metadata is removed from the notebook when saving, so there's less changes to merge.
Both these two things are done using standard hooks built into each of git and Jupyter. That is: git is written in such a way that it can fully support non line-oriented formats. We just took advantage of that capability.
- p1necone 4y agoAhh right, so you still make manual git commits normally, it's just that the Jupyter UI used to fall over when it encountered merge conflict markers in source files. And now it doesn't fall over any more and can nicely represent them because the conflict markers are no longer done for individual lines of text?
- jph00 4y agoYes exactly :D