Here are two different approaches I have taken in the past. I’ve never actually had Scrivener damage a project, but I’ve certainly damaged my own projects inadvertently, by thinking I had the latest version of it but not, and editing in it for a few days before noticing that. If what your looking for matches that profile, regardless of the cause, then try one of these:
Documented in §5.3.2, under subheading Merging Changes from One Project into Another, the concept is simple. You open what you consider to be the master project and then from that, use
File ▸ Import ▸ Scrivener Project..., targeting the recovery project, or older version. The result of this will be largely automatic, or more akin to synchronisation, in that the software will go through item by item and select the newest version of each item from both projects. This process creates snapshots for each binder item changed in this way, so that both versions will be available for comparison, and it adds each changed item to a Collection for your review.
This method will work best for cases where both versions of the project have independent edits made to them, and both versions came from the same project. That criteria means anything created by duplication in the file system, Save As, automatic and manually created backups or any other way of copying the original project and editing it. So it’s no good if the two projects came from completely different ancestors and you’re looking to merge them.
From Project Search, use the “Reset Search Options” command at the bottom of the search options menu, and type a single
* into the search field -or- for a more selective approach, if you know the time range to work within, type
mdate:1m into the search field, where “1m” means editing within the past month, “8d” would be 8 days.
Next, click the hook arrow button in the search results header bar to move the results over into the main editor, switch to Outliner mode, add the “Modification Date” column, and sort it by descending.
Set that up in both projects, and now you have a fairly easy list of things to walk through. What I find works best, since merging items will bump the modification date, is to in the master project select the chunk of items you know may conflict (I scroll until I hit items that have identical modification dates in both projects), and make a new static collection from that. This way you can use it as a “to do list”, removing items from the collection as you address them.
How you compare the text itself is up to you, but snapshot method is generally the most effective.