2-Way Synchronization tasks
With bidirectional synchronization SyncFolder lets you specify 2 storage locations A and B with the purpose of making sure that
the content in both locations is synchronized after the task has executed. Changes (i.e. add, delete, and modification of files and
folders) in one locations will be propagated to the other location and vice versa.
Items deleted in one location are also deleted in the other location, but there is an option to move deleted items to
a Recycle Bin. This option is enabled by default for any new 2-way sync task.
See Advanced task settings.
When the app detects that items are modified in both locations then, depending on what the user configures, a conflict will be reported or synchronization occurs for the most recently modified or added item.
The first time the app executes a bidirectional sync task (and also each time after a task is being reset) it assumes that all files
and folders in location A and B are new and therefore copies them to the other location except when they already exist there, have
identical 'last modified' date and time, and have the same length. If a file exists at both locations but have a different
'last modified' date and time and/or length then the newest one will overwrite the eldest.
When finished cache/database files are created that hold file and folder information from the 2 locations. These files are used in
subsequent execution steps to track updates, additions and deletes that happened in both locations.
You can clear the cache/database files, and consequently set the task in its initial state, by either do a right-click opening the
Task status page and clicking there the Reset button.
The same type of reset is also automatically done each time you change the configuration of a task, i.e. change the assigned folders,
modify filters, etc.
The actions that are taken when a file has been modified in both locations can be configured by opening the Task properties page and clicking Advanced task settings:
- Keep both files and report a conflict: With this option (the default) none of the files are copied but instead a conflict report is generated and you have to resolve the conflict manually.
-
Rename the older file and copy the newest: With this option the eldest file is first renamed and
then overwritten by the newest file. The renamed file will have the original file name with 'SFConflict - YYYYMMDD-HHMMSS'
appended to the file name. The date and time will be set to the last modified date and time of the original file.
Note: the next time the task executes the renamed file will be copied over to the other location unless it has been removed. - Overwrite the older file: With this option the newest file will be copied to the other location. The modified file in the other locations will be gone.
The actions taken when a file or a subdirectory has been modified in one location and deleted in the other location can be configured by opening the Task properties page and clicking Advanced task settings:
- Keep the file/folder and report a conflict: With this option (the default) the file/folder that is modified is kept in the location and a conflict report is generated that lists the affected files and folders.
- Keep the file/folder and restore in the other location: When this option is set the file/folder that is modified is kept in the location but also restored in the other location. Both locations will again be identical.
Manual conflict resolving - When the task is configured to generate a conflict report and the app detects one or more update and/or
delete conflicts you will have the option to manually resolve the conflict by opening the
Task status page and clicking the Resolve conflict button there.
A page is then opened were you can select what kind of synchronization action must be done for each file/folder: copy to left, copy to right,
or ignore.
When you run the task again and you have selected 'ignore' or not resolved any of the conflicts, the app will generate the
conflict report again.
Last modified: january 27, 2024