Full support of symlink files in InSync: provide selective symlink handle type


#1

Most of Linux and Mac systems actively use symlink files. Also Windows, Android and all other OS have full symlink support in filesystems too.

But InSync at now don’t have normal support of symlinks - it syncs them as regular files. So if I create a symlink (relative) in one device, it will create a regular file or folder, instead of symlink.

Quick example of large symlink sync problem:

1. We have a folder with copy of website source files, that have some symlink files.
2. Copy this folder to InSync folder on one device
3. Get this folder on another device and upload to webserver.

Result: Instead of symlinks we now have copy of folders/files, so website will partly broken.

So will be good to have in InSync feature to configure sync type of symlink files, with those options:

  • Follow symlinks - keep current mode by default, that sync symbolic link files as regular files/folders
  • Preserve symlinks - InSync will sync symlink files (relative and absolute) as is, without changes.

And make this option is configurable, at least, per account (like conversion of Google Docs files) and at best - per directory.


#2

There are already a lot of questions and feature requests about symlink syncing in InSync forum, so this feature have high priority especially for Linux and Mac users.

Also many other file syncing apps on Linux have options for tune up symlink handling (rsync, samba, du, etc), so this option will not be unclear for Linux users.


#3

At now some file syncing apps like Resilo, Syncthing, Yandex.Disk have symlink support, so we can lookup how they works and implement same things.

Seems Google Drive API will not have support of symlink at now, but InSync can handle this problem via store symlinks as special files (with .symlink extension) on Google Drive side, with contents of symlink target.


#4

Hey @Murz!

Thanks for the feedback. The use of symlinks is something we’re currently discussing and we’ll update you accordingly. :slight_smile: