

If you reorganized your folders by moving files to different locations, Syncovery will detect this and quickly perform the same moves on the other side of the sync, rather than deleting and re-copying the files. Syncovery does the job if you have used it before you reorganize the source side: Then you can sort by filename or checksum, and directly compare the lists of files. If you just want to compare drives, not sync them, you could just write a small script that lists all files with their filenames (and maybe a checksum), and import that into a spreadsheet or small db. That said, most sync programs do have the option to remove files in the destination if they are missing from the source, so a move should be replicated as new+delete, which requires more copying, but would work. This will not work if you move files between directories, though. If found, rsync uses the fuzzy basis file to try to speed up the transfer. The current algorithm looks in the same directory as the destination file for either a file that has an identical size and modified-time, or a similarly-named file.

This option tells rsync that it should look for a basis file for any destination file that is missing. Rsync does have a limited version of what you are looking for:

#Windows file synchronization free Patch
The feature was once proposed as a patch for rsync (google for "rsync detect-renamed"), but apparently it was never accepted into rsync. That would be fairly slow, as it would have to scan all files to compare them. I don't know of any software that detects renames/moves across a whole folder hierarchy.
