Will importing a directory create a clone?

I understand SeaFile uses libraries that it manages/maintains.

Is it possible to, instead, point SeaFile to an existing folder and it use that such that even if files are modified outside of SeaFile, SeaFile will reflect it?

I saw the import command but it doesn’t explain what the import does.

I’m not sure I understand your question.

You can create a library by using an existing folder. Then, whenever you change a file, it will be reflected (as long as your seafile client is running - if it’s not running, the change will be made whenever you next start up your client).

If you want to sync a folder without it being (in) a library, I don’t think that’s possible.

I have a folder on my computer with a bunch of files. I want that folder and the files in it to be made available through Seafile.

The folder/files will also have changes made outside of Seafile – through direct access to the folder/file on my server. Those changes would need to be reflected in Seafile. For example, if I copy a file into the folder outside of Seafile, then when I open Seafile, it should show that file, or sync it to clients using Seafile sync.

Does that make sense?

I hope I understand you correctly:

As long as the client is running and the folder is being synced using the client, the changes should be reflected no matter whether you’re making them locally or through direct access on the server.

Basically, if the client is running, everything you do in the synced folders will be reflected - there is no need to explicitly tell seafile to change something (after the initial setup of course).

I wouldn’t run the client on my server, right?

So let’s say I have a server called serverA and my data is on serverA:/data. I will install SeaFile on serverA. I will have a bunch of clients syncing the data from serverA:/data.

I want the data in serverA:/data to be made available from SeaFile that is installed on the server (serverA).

But, I may make changes to files directly from the server. For example, I may ssh to serverA and modify files in /data directly, not through SeaFile.

I would want those changes to reflect to all of my clients.

Does that make sense?

Yes, now I understand what you mean. That won’t work. The files aren’t directly accessible as they are stored as little chunks (blocks) on the server.
What you could do (although this would create a clone of the data) is to use seafile and a client on the server so that the blocks will be in one directory on the server and the “real” files are also on the server, but somewhere else. Then, modifying the files through e.g. ssh directly on the server will obviously be reflected.
Hope that makes sense (although it might not be the answer you were looking for)

Thank you. I appreciate the help!