Friday, February 21, 2020

Mac Backups and the Versions Database

Howard Oakley:

What that doesn’t tell you is that, without that Versioning database, all old versions of your documents are lost forever from your cloned volume. And that can be a very significant loss indeed.

So, Time Machine goes out of its way, and your time, to ensure that the Versioning database is copied for each volume it backs up. You might therefore presume that when you restore a document from a Time Machine backup, that restores all its old versions too. Only you’d be wrong: restored documents from Time Machine backups also lose all their old versions. You might consider that to be a bug, and I’d agree with you.

As far as I can tell, in recent versions of macOS including 10.15.3, the only way that you might get access to the old versions of a document is when you perform a full volume restore, which isn’t sensible when all you want are previous versions of a single document.

This is a general problem with storing data out of band. macOS goes to all this trouble to efficiently store the file versions in a location and format where apps can’t access them. And it never developed its own tools for working with them, so the versions system ends up not working with other parts of macOS like Time Machine.

I find low-tech methods, such as those employed by BBEdit and MarsEdit, that rely on saving actual files for each version to be more useful. For example, their backups can be backed up and restored, and I can use other tools with them, e.g. to search for which version has the text I’m looking for.

I wonder how much more efficient the versions database is than APFS file clones. Is it still worth it?

Howard Oakley:

If you find the macOS feature to keep previous versions of documents useful, you may have been disappointed when you looked for previous versions only to find there weren’t any. This article explains why that might be, and what you can do to preserve those versions.

[…]

The most robust and reliable way to preserve previous versions is to convert the document into a folder containing each version using my free apps in DeepTools, or Revisionist, which is a complete toolkit for accessing versions and the macOS Versioning system.

Previously:

Comments RSS · Twitter

Leave a Comment