Versioning becomes even more limited when you start doing more adventurous things with documents. Working on versions over iCloud Drive, external storage, and from backups Indeed, making a copy of a file is a quick, cheap way of stripping all previous versions from it.
So the only thing that APFS helps with is making better use of disk space.Īs far as I can see, there is no option, facility, or tool for making a copy of a Mac file and retaining existing versions into the new file. So when you make a clone of a versioned file in APFS, the new clone is a new file (just as it is in HFS+), and has no previous versions at all. As they become modified, their similarities diverge until they have no data in common, and are completely separate files. But clones are not the same as hard links, which refer to exactly the same file, they are two different files which happen to share common data. One of the new file system’s strengths is that making a copy of a file on the same volume doesn’t require the contents of the file to be duplicated – the copy is a clone. There seems to be a little confusion over the effect of APFS on this. You can, though, create a link to the original file, and use that link to access the same file, with the same versions. As versions are strictly associated with a specific file, no other file can be linked to those same versions, and macOS doesn’t duplicate versions into the copy. By convention in macOS, it is given the same creation and modification dates as the original, but as far as the file system goes, it is not the same file as the original one. When you make a copy or duplicate of a document, or a folder posing as a document, such as RTFD, the copy is a new file. Let me explain those a little more carefully.
versions only remain associated with the original document, not with copies or duplicates.In my original article summarising versioning and version management in macOS, I pointed out two of its limitations: The short summary is that I have failed to do so, and in reaching that conclusion I have learned more about this valuable feature of macOS, and its apparent incompletion. I rashly offered to implement those in Revisionist. He said that he wanted to be able to make individual versions protected against removal, and to assign them names. The other day, a friend took me back into macOS versioning.