Copy snapshot from one document to another

Having just found a document that is a version of my novel that sits - datewise - between what I had thought was the most recent snapshot and the currently-being-edited version based on that snapshot, I’ve tried to work out how to incorporate the ‘found’ changes too.

I couldn’t simply copy each ‘found’ chapter into the current document as it would overwrite my latest edits. So what i decided to do was this:

  • create a new blank document for each chapter, copy in the ‘found’ version, and snapshot it so I can use Compare to see differences. For this to work, I need to be able to move or copy the blank document’s snapshot into the actual chapter’s snapshot list. However, whichever way I’ve tried to do this, I simply cannot drag the snapshot from one document to another. Nor is the Copy command available in the Edit menu when I select the snapshot.

How do I do this? How do I copy or move a snapshot from one document to another so I can achieve what I need? Remember, I don’t want to overwrite my current edits, but simply to get a snapshot from one snapshot list to another.

2011 - latest snapshot in actual chapter document
2013 - ‘found’ document, whose changes are not yet included, but which is snapshotted in a temporary document
2017 - current chapter document based on 2011 version, and being edited

Sorry, this is not possible. Snapshots are permanently attached to the snapshotted document.

(Remember, Scrivener has no way of knowing that the “found” document has anything to do with anything else. You’re asking, essentially, if Scrivener will compare a chapter in your novel with a random chapter from A Tale of Two Cities. It will not.)


If I understand correctly, you can still accomplish what you want to accomplish.

Version A

If all you want to accomplish is the comparison between found and current version, you can use this way:

You can paste one version into a fresh doc and snapshot it. Then completely overwrite the text of the fresh doc with a paste of the other version. Then use the Compare with snapshot function to examine the differences.

(If the found chapter was actually based on the earlier version, i.e. the early snapshot you have which predates it, then it might be useful to actually compare the found version with the old snapshot text rather than with the current version, simply because this would show up for you all and only the stuff that was fresh found version. And that might be enough to show you what you might want to rescue.)

Version B (Requires more caution!!)

If you want to be able to do the comparison, but it is also important to you to get the found version into your snapshot history, then you can use this technique:

Duplicate the doc that is your current chapter (important). (Notice that the dup doc also inherited your existing snapshots.)

Copy the text of your found chapter.

Then select all the text in the dup doc and paste over it with the text of your found chapter.

Snapshot the dup doc.

Copy all the text from the original current-chapter-version doc.

Then select all the text in the dup doc and paste over it with that current version chapter text.

Now you dup doc should contain you current chapter text. Its most recent snapshot will be the found chapter, and the snapshot before thst will be your eldest snapshot. So, in effect, in this way you have sandwiched the found version into your snapshot stack.

Of course, you probably want to snapshot one more time to also add the current version chapter to the stack before you start comparing with the found snapshot and changing things.

When you are sure that all is well, the dup can replace your original chapter doc.


Yes, I think I’ve got that.

I did have one other idea, which doesn’t involve duplicating the document - would this work also?

Current situation:
2017 edits
2011 (latest)

Then I would snapshot the current edits, giving:
2017 edits
2017 (latest)

Then I would copy in the ‘found’ 2013 version and snapshot it, giving:
2013 edits
2017 (latest)

Then I would select the 2017 snapshot, ‘roll back’ to it, then delete its snapshot, giving:

I could then Compare the 2013 snapshot with the 2017 version in the editor to incorporate any changes.

Yes! I just tested this and it works. Thanks for giving me the basic idea. It all worked because when I ‘rolled back’, Scrivener didn’t delete the snapshot I rolled back from. Thank goodness!

The safest way I can think of doing this is with duplicate + merge, which will also retain the original snapshot timestamp, if that is important (doesn’t sound like it in this case, but for future readers who might). The idea is very simple: have a snapshot in an otherwise empty file, select it and the main document and merge them together:

  1. Duplicate the document with the snapshot you wish to copy into the other document. (Optional: only necessary if we want to retain the document the snapshot comes from; if it only exists to be “ported” into something else as a snapshot then we don’t need to duplicate it.)
  2. In the Snapshot pane for the duplicate, delete all unwanted snapshots and delete all text in the main editor. Likewise strip out all meta-data you do not want merged. keywords, references, notes, synopsis, custom meta-data. The idea here is to have a stub file that has no content but the snapshot(s) we want to “import” into another document.
  3. Move, if necessary, the duplicated document somewhere below the document you wish to copy to, in terms of binder order (nesting irrelevant). Merging uses the first document, in binder order as the primary, elements such as title will be discarded from the secondary.
  4. Select both the duplicate and the document you wish to copy to, and hit Merge (Shift-Cmd-M) or Documents/Merge.

Thanks Amber - that sounds even easier than my proposed (but slightly Byzantine!) process.