@janeadams Thanks for your recomendations!
@mpm There is https://www.reviewnb.com for github reviews of jupyter notebooks and https://github.com/jupyter/nbdime for terminal diffs. but also, my two cents: keep notebooks to the very bare minimum (tutorials, interactive viz) and put the rest of your code in proper Python modules that you import from the notebook.
@moremeta that looks perfect for what I need, thanks!
@seve_py that one is interesting too. I'll give it a try. Thanks!
@mpm One solution is to use nbdev https://www.fast.ai/posts/2022-08-25-jupyter-git.html but if that's too much of a commitment, the diff problem is handled well by https://www.reviewnb.com/
@lobrien thanks! I've been using your suggestions and that works fine for me.
@mpm also recommended - jupytext for syncing a notebook with a .py or .md : https://github.com/mwouts/jupytext Works both directions.
@mpm The best approach is to clear all output cells before committing. Of course, this can be tedious to remember every time, so there are bash scripts you can install within your directory to run automatically for you, e.g. https://gist.github.com/ageron/c9ad56eb8c86e439dc2e792938c0e994
I also really like Google Colab for collaborating on notebooks! Then slowly move functions into a module that is git-committed and imported, as things start to shore up.