Hacker News new | ask | show | jobs
by eschneider 1029 days ago
If you just need to restore older versions of a (non-text) doc and don't need to support things like diff and merge, a handy approach is to store all the steps needed to create the doc, same as you would to implement undo/redo and allow "tagging" the operation stream to create your versions.

There are a lot of ways to optimize this sort of thing in practice so it runs reasonably, but that's an exercise for the implementer.