Looks like no one’s replied in a while. To start the conversation again, simply ask a new question.

Dealing with macOS Versions feature and file syncing services

Full disclosure: I'm yet to come to terms with the Versions feature and that saving ain't savinganymore. I've had no shortage of dramas losing work and losing track of files since the feature was introduced, so maybe "I'm Doing It Wrong"TM.

The latest drama comes about when using file syncing applications. In my case, Box, but I'm sure Dropbox would have the same issue. I have a regular workflow that looks like this:

  1. Open a file stored in my Box Sync folder on one computer, do some work, save it.
  2. Open the newly synced file on a different computer, do some work, save it.
  3. Return to the original computer, where the file is still open...

At this point I'm faced with a challenge. The open file doesn't have the changes from the other computer, which is normal - I haven't re-opened it from disk. However, there is no longer any way to close the file without saving the current contents! I can either close and revert (which replaces the file on disk with the last saved version on that computer) or I can close and save (which replaces the file on disk with the current version on that computer). Either way, I lose the changes I made on the other computer.

The best workaround I've come up with is to force quit the application (which is risky), or to duplicate the open file in Finder, close the open file (choosing revert or save - it doesn't matter), delete the just-closed file and open the duplicated file instead.

Pretty convoluted right?

It gets worse when I'm sharing my Box folder with a second person - in that case I need to be mighty sure to close the file after every editing session, or risk overwriting the other person's changes.

Is there any way to rescue some sanity before macos descends completely into iOS-banality?

iMac, macOS High Sierra (10.13.3)

Posted on Jan 30, 2018 9:31 PM

Reply

Similar questions

11 replies

Jan 31, 2018 5:50 PM in response to Liteyear

I've just done some experimentation and have some tantalising results.


  1. I created a Pages document, entered "Step 1" and saved.
  2. I then copied the file using cp, and opened the copy in Pages as well.
  3. In the new copy I added the line "Step 3" and saved.
  4. I then replaced the original file with the modified copy using mv.
  5. I returned to the original open document in Pages, made an edit and closed it to generate the dialog at the heart of the matter:

User uploaded file


I then tried each option, with very surprising results!


  1. Revert Changes - even though the dialog says this will restore the version "you last saved", it actually does not change the file, preserving the "Step 3" changes made in on the other instance!
  2. Save - even though the dialog says this will save the changes, it actually produces a new dialog that looks like this:

User uploaded file

This time, the three options actually do what they say! What a relief to see "Save As..." make a return.


Note that the wording in the first dialog is quite deliberate, despite being wrong. If you open the file without making a save, the wording changes to "...since you last opened the document.".


So this seems like great news - the "Revert Changes" button is actually the old "Don't Save" button, dressed up in the new tricky "Cloud era" language.


Next to confirm - are cp and mv actually doing some magic behind the scenes or will this work using an ignorant third party application?

Jan 31, 2018 8:14 PM in response to etresoft

Thanks for the info etresoft. To be clear:


  • The experimenting I did was just for fast experimentation purposes - my actual workflow is in the first post and has nothing to do with mv/cp/vi/ssh/Terminal. At least for now that workflow is still possible, hence the success claim.
  • I'm not interested in real-time collaboration (and when I am I'll use a tool designed for that purpose).
  • I've been using this workflow long before Versions existed, using whatever file syncing tool was flavour of the decade at the time, and it only broke when Versions was introduced.
  • There is no way I can guarantee that I will have closed all the files I was working on on one computer before I start working on them on another computer. I stopped doing this around the same time I stopped shutting down my computer every time I finished using it (remember those days?). Unfortunately when I'm on the train with a laptop it's too late to realise the errors of my ways and close all the open files on my desktop computer 100km away.
  • My files are organised by project, not by application. There is no way I'm going to use a different file syncing tool depending on the version of software used to create that file and the type of file I want to sync! Actually... that's not entirely true - I did concede that the 1Password database file (which is a package) needs to be synced by a dedicated service, not a generic file syncing service, and so did 1Password (who kindly built that feature into their app so I didn't have to open yet another account).


Your general cautions are well taken. I'll remain wary and with the sickening feeling that computing is going downhill.

Jan 31, 2018 2:39 AM in response to Yer_Man

Good question, was wondering the same thing. One would imagine they've built in a provision to deal with this scenario. Maybe by notifying the open application when a newer version has been synced to disk or something?


But then again, there'd be a whole heap of workflows disrupted by these changes and there's not much evidence they've strived to support the established practices. For example, opening a file to make a temporary change (eg. hide some columns to print a spreadsheet or experiment with a modification to a drawing and then abandon it) is only weakly supported now - there's a System Preference setting that allows you to prevent your temporary changes from overwriting what's saved, but it's off by default and I feel is only a temporary holdover.


I've never been a big fan of relying on workarounds or non-default configurations for core functions. My preference would be to learn the intent of the new paradigm and become proficient with it. Only now I'm losing faith that the new paradigms do have any provisions for efficient use. More and more technology is about finding better marketing for worse ways to do old things.


Oh boy, when did I become such a curmudgeon? Probably around the time writing a post on an Apple support web forum means being interrupted every couple of minutes with errors and notifications about failing to save copies of my post and offering to recover from auto-saved versions with impossible dates. I kid you not, it's like it is baiting me.

Jan 31, 2018 12:39 PM in response to Yer_Man

Yeah, that was going to be my next port of call. It would be my last resort though, because after Box have modified things to support the new system I'd then have to contact Dropbox. And Transmit. And rsync, and sftp, and vi, and Subversion, and git, and SnailSVN, and... I think you see where I'm going with this. I doubt all of those software providers are going to be receptive, so you're always going to have some software that modifies a file on disk without knowing it then has to notify open applications (or whatever the fix needs to be).


Fixing it in one place (Versions, eg. by responding to changes to the file on disk) seems like a much more fruitful path.

Jan 31, 2018 5:29 PM in response to Yer_Man

Ha! Do you mean, why doesn't every file system have feature parity with Apple's file system? Seems like a bit of a pipe dream.


I don't know. It seems to me that macOS allows applications to make changes to files on disk, even if that file is open. Pretty standard behaviour, been solved for decades (usually by some prompt that says "the file on disk has changed, do you want to load the new changes?", or at the very least allowing the file to be closed without changing what's on disk). Now Keynote, which knows all about Versions, does not prompt to load the new changes and has removed the ability to close without changing what's on disk.


What the third party file system is is largely irrelevant - the OS accepts writes to files on its file system. If one makes use of that feature, but the file is already open, the OS no longer provides a mechanism for the open file to not overwrite the changes.

Jan 31, 2018 6:06 PM in response to Liteyear

Success!


I used Pages to create a document, saved it to my Box Sync folder, ssh'ed to another computer that is synced to that folder, modified the newly created file using vi (corrupting it, but nonetheless modifying it), waited for that to sync back to the original computer, and then tried closing the original document.


I was presented with that deceptive dialog in my previous post, held my breath and clicked "Revert Changes". Hoorah, the changes weren't reverted, but retained - the file was indeed left corrupt!


I also learned that the "Revert" button in the second dialog also doesn't revert, but leaves the file alone.


Naturally my heart is going to skip a beat every time I use that "Revert Changes" button, so I'll probably continue to make duplicates for the time being, but hopefully by the time I feel confident with the new paradigm it wont be time to change it...

Jan 31, 2018 6:42 PM in response to Liteyear

Hello Liteyear,

I'm not sure what your last "Success!" message is about. What you are attempting to do is dangerous and will almost certainly result in data loss.


Some Apple apps are able to use iCloud to sync changes, both to documents on disk and to documents currently open. Not all Apple apps can do this. I have no idea about 3rd party apps. It is possible, but very difficult to implement.


Some 3rd party apps are able to detect changes to files on disk and automatically reload them. This is, however, very rare.


On the rare occasion that you can get iCloud to work properly, the process involves a delicate dance between several background processes and the app.


3rd party sync tools, and even iCloud drive when used by apps that aren't very iCloud-savvy, don't know about any of this. They just update files on disk. If you have the file open, no one can tell what will happen. The most likely scenario is data loss.


None of this is directly related to Apple's new "versions" system. Apple's versions are completely separate from any iCloud versions and certainly unrelated to any versions maintained by 3rd party sync tools. Apple's versions are really built around the concept of autosave. I strongly urge you to avoid any "cp" or "mv" commands when dealing with files belonging to any app that uses a modern document/versions system. These systems work by doing lots of "cp" and "mv" files on their own. And if you are using High Sierra, which it appears you are, they may be doing even more esoteric operations.


If you are working with a full-blown, document-based app, then you need to manage those documents from within the app. Don't mess around in the Finder. Really don't mess around in the Terminal. I can't emphasize enough what a bad idea that is. For Apple apps, this means you use the open/save "powerbox" dialogs and that's it. If you need to sync any files (for Apple or for truly iCloud-aware apps), you use iCloud and only iCloud. Don't even think about using iCloud and something else.


If you are using some other full-blown app like Microsoft Office, then stick with whatever sync services that Microsoft provides. You can try something else if you want. It might seem to work for a while. But one day, you will regret your decision. I can guarantee it.


Sadly, the state of live document syncing is very poor. Google is best at this. Google Docs have supported concurrent editing for years. If you must have this feature, then you must have Google Docs. Nothing else compares.


Supposedly Microsoft now offers real-time collaboration. I don't know how well it works. This feature has been available on the Mac for several days now.


As for iCloud, I can't really recommend it. It is supposed to support concurrent editing, by only a single person. Supposedly it supports collaboration if you have recent versions of everything. I'm skeptical. I have seen far too many dialogs that say "Warning! Document "foo.pages" was modified on "Pandora" on 2017-01-02 at 9:53 pm and modified on "Pandora" on 2017-01-02 at 9:53 pm. Which one do you want to use?"


If you want to use DropBox or some other 3rd party sync service, make sure to close all of your documents. Don't ever attempt to open the same document on two different devices at the same time. You will lose data that way - guaranteed.

Dealing with macOS Versions feature and file syncing services

Welcome to Apple Support Community
A forum where Apple customers help each other with their products. Get started with your Apple Account.