Scrivener, Dropbox and backups
Edit: Scrivener allows you to store your backups anywhere; creating a specific folder in Dropbox offers a nice, convenient remote location.
If like me you keep your Scrivener projects in Dropbox because you alternate between machines – in my case an iMac running Lion and a MacBook Pro running Snow Leopard – when you switch from one machine to the other, make sure Dropbox has synced before opening your current Scrivener project, otherwise you’ll need to dig out a backup.
Scrivener’s automatic backup feature means that your recent files are always available to restore should you be a bit of a pillock and forget to do this – as I did last night. Twice.
Here’s the scenario: you’re working on your desktop machine on a Scrivener project that you keep in your Dropbox folder. You close this at 5:00pm, at which point Scrivener saves the project to Dropbox and automatically makes a local backup on the desktop computer. All good.
At 7:00pm you decide want to work on the same project on your laptop. You open your Dropbox folder on the machine, but being particularly enthusiastic (or forgetful) you open the file in the local Dropbox folder before Dropbox has synced with the web-based folder. This can happen, because Dropbox often doesn’t sync immediately – sometimes it’s very quick, but on other occasions it can take a few minutes, depending on connection speed or other factors.
As a result the file you now have open on the laptop will be the one Scrivener saved the last time you worked on the project on that machine; it could be a day old, it could be a week old, who knows? But even if it’s only a few hours, the chances are that you’ve made more changes than you really want to have to make again because of your… enthusiasm. For the purposes of this post let’s say you last saved the file on the laptop the previous day at 3:00pm.
What this means is that Scrivener will now automatically make a backup of the file you currently have open on the laptop – the one from 3:00pm yesterday – to Dropbox when it does sync, thereby overwriting the more recent file you saved at 5:00pm today on the desktop machine. Even if you close the file or quit Scrivener now it will automatically overwrite the work saved at 5:00pm today with the version from 3:00pm yesterday. Not so good.
It is in just such circumstances that Scrivener comes to the rescue. What you need to do is retrieve the back-up of the project that Scrivener saved locally on the desktop machine when you closed it at 5:00pm. On a Mac (don’t ask me about Windows…) you’ll find this in the following location:
If you sort the file list by Date Modified your most recent file will be at the top. Open this file, double-check to make sure it’s the correct one, then save it to Dropbox. This will overwrite the version from 3:00pm yesterday that Scrivener saved from the laptop when you closed it at 7:00pm. Boom, as the late Steve Jobs would say, your work is restored, and you should be thankful to Scrivener for holding the safety net for you.
There are a couple of potential problems you should be aware of. The first is the possibility that you don’t realise you’ve opened an older version of the file before making changes aplenty. In this case you’re just going to have to repeat some work, because you’ll have conflicting files with different changes. The other problem will be if you save the file on your desktop, then go out on the road with your laptop, because you won’t have access to the backup that Scrivener saved locally on the desktop computer. I was lucky: I was at home.
Ideally, wait until the local Dropbox folder on the machine you’re working on has synced with the online folder; a good idea is to set Growl to issue a notification when this has occurred.