DeltaSnap

Compare snapshots

Compare indexed points in time or run a one-off full scan of excluded locations.

DeltaSnap compares two snapshots on the same APFS volume and reports path-level changes from the older point to the newer one.

Two snapshots are indexed and compared before an earlier file or folder version is previewed or restored safely.

Compare in the app

  1. Open Snapshots and select exactly two rows on one volume.
  2. Choose Compare.
  3. Wait if either point still needs indexing.
  4. Filter or browse added, removed, modified, replaced, and moved paths.
  5. Preview, reveal, compare, or open a path in Version Control when available.
DeltaSnap Snapshot Comparison Browser showing before and after snapshots, counts for added, deleted, modified, replaced, and moved paths, a change tree, and an inspector for the selected file.
The comparison browser reports counts per change kind, a filterable tree, and per-path detail with Preview, Reveal, and Restore.

Moved detection pairs a unique filesystem identity across old and new paths. A move with concurrent content changes can still appear as other change kinds when it cannot be paired safely.

Persistent index and exclusions

By default, DeltaSnap builds a baseline and per-snapshot history in the background. Indexing exclusions omit regenerable and noisy trees: system and application directories, caches, logs, saved application state, derived Apple metadata, installer and App Store staging areas, kernel core dumps, and rebuildable developer output such as DerivedData, CoreSimulator, and node_modules. Your Library is otherwise indexed, because application databases, preferences, mail, and sandboxed documents hold work you cannot recreate. The excluded directory itself remains visible, but its descendants are not compared.

Edits to the exclusion lists save as you make them and apply to snapshots indexed from then on. Indexes already built are kept, so the first comparison that spans a change can show a folder you just excluded as removed, or one you just included as added; comparisons after that read true. To redo every index under the current rules, use Settings → Indexing → Maintenance → Rebuild All Snapshot Indexes. Re-index Snapshots does the same for one volume.

Compare Everything

Choose Compare Everything (Full Scan)… when the question concerns excluded locations. This performs one direct scan of both snapshots, ignores persistent exclusions, and saves nothing into Version Control history. It is slower and can report a much noisier result.

Compare with dsnap

dsnap diff data@HEAD~1 data@HEAD
dsnap diff --format=tree data@HEAD~1 data@HEAD
dsnap diff --format=zfs data@HEAD~1 data@HEAD
dsnap diff --full data@HEAD~1 data@HEAD

The CLI normalizes operand order to older → newer. Formats are unified, tree, and zfs; --full runs the one-off exclusion-free scan.