I’m a little confused by the FAQ entries on how syncthing handles both symbolic links and hard links.
So, if there is a file in a directory synchronised by syncthing which has other hard links to it will these hard links be lost? I suspect they will because when syncthing updates a file it presumably changes its inode (i.e. it doesn’t update ‘in place’).
… and secondly I think syncthing will synchronise a symbolic link but not the file it points at. I.e. the pointer is preserved/changed but not what it points at.
Well I think it could do with a little bit of expansion. What the FAQ says is:-
Symbolic Links (synced, except on Windows, but never followed.)
This doesn’t quite say “syncthing will synchronise a symbolic link but not the file it points at”
Hard Links (followed, not preserved)
You really, really don’t “follow” a hard link. I think one should say syncthing always creates a new copy of the file and that the hard link is destroyed. If there happens to be another hard link to the same (original) file then the original file will still exist.