-
Notifications
You must be signed in to change notification settings - Fork 69
History view #349
Comments
cool, thanks for sharing! |
DAT creates a lot of versions in a short time. It would be good to allow a DAT client to have some sort of "bundled versions" that act a little bit like Keyframes in Movies. Is there a system for this in place? |
Beaker-browser implements versions like this: |
For me the name The current version history, that |
dat-ecosystem-archive/DEPs#5 (comment)
|
I'd probably say this feature's main purpose is historic lookup. But is this really user-friendly? Maybe: "Time based version" is better? Every version entry also has metadata with a timestamp. Users could also configure the time-span. (It would behave a little bit like a financial chart) (This could probably done in the frontend alone, without changes on the DAT data) |
Regarding the time-stamps: In distributed systems "timestamps" are not trust worthy. They can be seen as rough estimates around which time the version probably happened. In Git it usually works out in practice but its not reliable. However: much more problematic about using time-stamps is that dat-log (that uses append-log) only stores the date of "put" operations in the "last-modified" metadata. Delete is not stored! Related: mafintosh/append-tree#16 |
Thank you for clearing this up. My suggestion required a timestamp of Delete and put. 😭 Need to rethink it... |
Note: I've proposed self-reported timestamps (git style) to be included in hyperdb/hyperdrive: |
With the new SLEEP version, dat can download, save the changes, and revert to a previous point in history. It can also see a diff of which files changed. It could also see the content of the files that changed, but let's just have this iteration focus on looking at the history of changes and restoring to a previous point in time.
Here are some examples:
Restore to earlier version
While a file is open
Table view
GitHub history
GitHub Desktop App
The text was updated successfully, but these errors were encountered: