v0.3.0
A lot landed since 0.2.0 - most of it about finding and bringing back files after they're gone, plus moving checkpoints around.
New commands:
- find and recover - find which snapshots still hold a file you lost, or just bring it back from the newest one that has it, even after rm
- undo - revert the last restore back to the pre-restore tree
- verify and verify --repair - rehash the store to catch corrupt or missing blobs, and drop snapshots that reference them
- stats - store size and how much dedup is saving you, plus --markdown for a shareable table
- name and pin - label a snapshot after the fact, and keep one out of gc rotation
Better existing ones:
- export/import a snapshot as a tar, gzip with -z, and stream through stdin/stdout so you can pipe a checkpoint to another machine over ssh
- list gained --limit, --since, --grep, --pinned, relative time by default with --absolute for full timestamps
- diff can compare a snapshot against the live working tree, and show a line-level diff of one file
- restore got --dry-run, --into to pull a snapshot aside without touching the live tree, and it defaults to the latest snapshot
- status --exit-code for scripts, a global --quiet, and --json on more commands
- gc can drop specific snapshots by ref or anything older than a duration, and reports the space it frees
Still Python 3.10+, only depends on rich.