Backup strategy

In the Destination tab of the sync settings you can select the backup strategy, which defines if and how overwritten and removed files can be recovered.

Note: when the option Keep synced in background is enabled, the backup strategy is applied during the main sync but ignored during the following background syncs.

None

The default. When a sync overwrites or removes a file on the destination, the old file cannot be recovered. You can keep this option if you only need a copy of the latest version of a file.

Move old files to the trash

Files that should be overwritten or removed are moved to the trash. The trash keeps a flat list of all files that are moved to it. Since the original directory structure is not preserved, you can only recover individual files before the trash is emptied.

Move old files to…

Files that should be overwritten or removed are moved to the selected backup directory. The original directory structure is preserved, but to save multiple versions of the same file in the same directory, each filename is appended the current timestamp. The timestamp has the format yyyy-MM-dd[T]HH-mm-ss+ZZZZ, which is independent of the current system locale and takes the timezone into account. Moreover, this timestamp is used to determine which backup files lie outside of the selected timeframe and will be removed.

You can select a custom backup directory for each destination base of the sync item. The backup directory has to be on the same volume as the corresponding base; if inside the base itself, the backup directory is automatically excluded from the sync.

Incremental, link unchanged files

Each sync creates a directory named with the current timestamp, which is used to determine which backups lie outside of the selected timeframe and will be removed. The first sync copies all files. During following syncs, all unchanged files are linked to the previous backup directory.

The linking is achieved by means of so-called hard links, which allow referencing the same file from multiple paths. When looking at the linked files in the Finder, they appear as separate copies, seemingly occupying separate space. In reality, regardless of how many hard links exist to a given file, no additional space is required. A hard link looks just like the regular file it was linked to and points to the same data, and editing the contents of any link updates the others as well.

You can restore files or directories from any of the backup copies by using the built-in browser (see below) or copying them in the Finder. Even if the file was originally created by a hard link to another file, the new file is a genuine copy which can be edited without affecting the backup.

Note: because editing a file also updates its hard linked copies, incremental backups are not supported for two-way syncs, since every base is at the same time source and destination, and editing a file on the destination would cause the linked files in the older backup directories to be updated as well. However, you can add a separate sync item for each base of the two-way sync to create an incremental backup to a separate directory and, optionally, make a dependency chain.

Backup browser

You can open the backup browser by opening the File menu or the main window context menu, then selecting Browse Backups.

All the backups are listed in the sidebar. Backups for which the current directory doesn’t exist are disabled.

Backup lifespan

  • Keep all backups: backups are never removed.
  • Decimate old backups: keep all backups for the last 24 hours, one backup per day for the last 5 weeks, one backup per week otherwise.
  • 7 days/1 month/3 months/6months/1 year/2 years: backups are removed after the selected time has elapsed.

Inspecting hard links

You can display the number of hard links to a file with the following Terminal command:

ls -l /path/to/file

You can find out whether two or more files are linked by running the following Terminal command and comparing the serial numbers for each listed file:

ls -i /path/to/file1 /path/to/file2

You can find all files in a given directory with a given serial number with the following Terminal command:

find /path/to/directory -inum serial_number

You can find the cumulative size of a directory, counting linked files only once, with the following Terminal command:

du -hs /path/to/directory