What are Jupyter Notebook checkpoint files for?

Besides the original Jupyter Notebook file (.ipynb file), sometimes I get a checkpoint .ipynb file which seems to be directly linked to the original .ipynb file.

What's the purpose of these checkpoint files?

And what causes them to be generated (sometimes I get this sort of checkpoint file, and sometimes I don't)?


Solution 1:

Jupyter creates a checkpoint file every single time you create an .ipynb file, and then it updates the checkpoint file every single time you manually save your progress for the initial .ipynb.

A manual save is what's done when the file is saved by clicking the Save and Checkpoint button:

img

Auto-saving, on the other hand, updates only the initial .ipynb file, not the checkpoint file.

When you revert from the initial .ipynb file to a previously saved checkpoint by using the Revert to Checkpoint button, the checkpoint file is what gets accessed and opened inside Jupyter.

img2

As a side note, the checkpoint file is located within a hidden folder named .ipynb_checkpoints. This folder is located within the same folder as the initial .ipynb file.