FreeFileSync

File Versioning

When you need to preserve files that have been deleted or overwritten it's often sufficient to select Recycle bin in synchronization settings. However this is only available for local drives and offers little control on how to store and how long to keep the files. FreeFileSync therefore has an additional option, Versioning.

1. Keep all versions of old files

In synchronization settings set deletion handling to Versioning and naming convention to Time stamp. FreeFileSync will move deleted files into the provided folder and add a time stamp to each file name. The structure of the synchronized folders is preserved so that old versions of a file can be conveniently accessed via a file browser.

Example: A file Folder\File.txt was updated three times and old versions were moved to folder C:\Revisions

C:\Revisions\Folder\File.txt 2012-12-12 111111.txt
C:\Revisions\Folder\File.txt 2012-12-12 122222.txt
C:\Revisions\Folder\File.txt 2012-12-12 133333.txt



2. Save only the most recent version

Set deletion handling to Versioning and naming convention to Replace. Deleted files will be moved to the specified folder without any decoration and will replace already existing older versions.


3. Save versions at certain intervals

With naming convention Replace it is possible to refine the granularity of versions to keep by adding macros to the versioning folder path. For example you can save deleted files on a per sync session basis by adding the %timestamp% macro:

Example: Using the dynamically generated folder name C:\Revisions\%timestamp%

C:\Revisions\2012-12-12 111111\Folder\File.txt
C:\Revisions\2012-12-12 122222\Folder\File.txt
C:\Revisions\2012-12-12 133333\Folder\File.txt


This allows for a simple manual undo by moving the deleted files from the last synchronization session back to their original folders. Other macros like %date% or %weekday% can be used to reduce the granularity to days and weeks.