If I select a folder (“A”) to synchronize with server and later decide not to synchronize one of its subfolders (“A.B”), I might not want local files to be deleted. Just because I don’t want something to be synchronized anymore doesn’t necessarily mean I want it to be removed from my local machine.
Currently there seems to be no option to do that (apart from removing folder A completely and setting it up again while unselecting subfolder A.B) so it would be great if the user could somehow choose whether local files are to be deleted.
- Set up a folder to be synchronized with the server.
- Later click on “Choose What to Sync” for that folder.
- Uncheck subfolders that you don’t want to synchronize anymore.
I have found some posts from an interesting discussion from the help forums: Unchecked folders will be REMOVED from your file system
Again I want to stress, this CANNOT be the way this works, or users will be losing files constantly and won’t know why. NO WAY any solution should remove local files. The LOCAL files should ALWAYS be the master.
NO SOLUTION should delete local files simply because a checkbox is unchecked
I am never going to convince developers there why this is such a bad idea, so I simply will not use this product.
I have reviewed several cloud systems. Absolutely none work the way NextCloud works. They can’t. No one would use them. No one would take the risk. There is a scenario where someone could uncheck a folder, delete the local files, not know what to do, and so delete the account on the nextcloud server, thereby permanently losing their files.
This user from 2017 is absolutely right.
New post from user hcoin:
"If the original source of every file was the server (think ‘netflix movie downloads’) the idea files ‘go away when the connection goes away’ feels normal. When answering this question above we see the nextcloud devs narrow the timeframe they allow in their thinking, they begin with the assumption that the ‘server was the source’ so ‘naturally’ clients disconnecting wouldn’t want the files from there anymore either. This is of course a logical impossibility, the server is never the source, phones are the source of nearly all photos and video clips, desktops are the source of nearly all documents.
Also, we read ‘nextcloud isn’t a backup solution’ proposed as the reason why deleting files from the clients when the server connection is broken ‘makes sense’. This has the same feeling of being told since cars are not trains you shouldn’t travel. You’d think if nextcloud authors didn’t want the nextcloud server to be relied upon for backup they would be more likely to provide a way for disconnections to retain local files, not less.
I think the ‘real reason’ for deleting files on the clients upon disconnection is having to face the daunting logic puzzle of nextcloud being presented with ‘a new directory to sync’ already populated with a great may files that already exist on the server. Is a file with the same name and with different content and an older date than one on the server – but in ‘a newly presented directory’-- ‘what the user really wants’ or would they like that file on the local system replaced with the ‘newer one with the same name’ on the server, or renamed then uploaded to the server as the older file? Or uploaded to the server as ‘an older version’ then ‘the new one’ replace it… or… maybe require all newly connected directories that already exist on the server only if they contain older content to be renamed on the client, then the new ‘empty’ directory on the client populated with what’s on the server?
Coming up with an answer to that one that ‘isn’t confusing to most people’ – that’s I think the real issue preventing the right thing from happening here: Certainly at least on desktop systems DO NOT DELETE CLIENT FILES upon disconnection by default, ever. If I was coding this: Upon connection of a new directory to the server, any file on the client that’s older than on the server, for which a prior version doesn’t already exist on the server, should be uploaded as an older version then replaced with the latest on the server. If ‘versioning’ isn’t enabled on the server, then if a non-empty directory is presented for connection to the server that already exists on the server – rename the client directory and create an empty one with the name on the server and populate it from the server, let the client figure out what to do with the files in the ‘old’ directory."
Also reported at Owncloud (same issue) - but they do not fix it. See Unchecking synchronized subfolder without local delete · Issue #2502 · owncloud/client · GitHub