Syncthing multiple directories as one directory.

Hi, I’m new to this forum, so sorry in advance for any mistakes. I’m using Syncthing for 2 years and it’s great. Now I have several directories synced, but I want to sync more. Making new Syncthing directory for each directory is not the best strategy, because the number of synced directories is overwhelming. I know I can use ignore to exclude files/directories I don’t want to sync and I use this feature, but in this case it will be really hard to do and will require frequent updates.

My case: I use Syncthing to sync data between multiple computers. I have main Syncthing directory (documents, projects, etc) synced between my laptops and PCs and Music folder synced between all computers and phone. I have no problem with this directories, because in this field Syncthing is doing great job. Recently I wanted to sync different kind of stuff. For example apps configuration files or game saves. And here is my problem. I can made separate folders for every directory I want to sync. Let’s suppose I have 3 apps and 3 games of which I want to sync data. I should create 6 Syncthing directories one per every app/game directory. So I will have Syncthing directories like App1, App2, App3, Game1, Game2, Game3. It’s not good, because the number of folders will be overwhelming (here I supposed only 3 games and 3 apps). Is there anyway to organize this Syncthing directories as Apps which contains the directory of App1, App2, App3 and Games, containing directories of Game1, Game2, Game3? I assumed I can bypass this problem by writing Python script that will copy interesting directories and files to subdirectories in new directory that will be synced as Syncthing directory and vice versa. This bypass has some drawbacks, because it will require additional disk space and will produce unused copies of synced files.

Have you any idea how to achieve what I want only in Syncthing without additional efforts? Thanks in advance.

You either use a folder per directory, or use ignore patterns, there is no other way.

If you are on windows, you could try and use magic with junctions etc, but not sure how well that would work, especially if you want the files on the other side to be dispersed back to some random collection of folders.

1 Like

Thanks for help. I’ve no experience with junctions and I do not want to be dependent on one platform. I use Windows and Linux. I have no need to use Syncthing on Linux, but I can change in the future, so any Windows-specific solution is not optimal. Using ignores will be hard because if I use the whole directory which contains subdirectories I want to sync there will be more files to ignore than to sync and this files to be ignore can change frequently (e.g. after update of any app or installation of new one). I will carry on with python script and another directory for sync.

Thanks for help anyway. Syncthing is a great piece of software that makes life really easier.

That sounds like a use-case for include directives with an * at the end, e.g.

!/wannasync1
!/wannasync2
*
1 Like

Thanks for help. The ignore conditions are really complex now and I must check if everything is working, but at the end of the day this seems to be working fine.