It's quite a beast but I use git-annex for all my file storage and synchronisation purposes.
You can select precisely which files you want to keep in which machine.
If it's free and open source and it's also software, it can be discussed here. Subcommunity of Technology.
This community's icon was made by Aaron Schneider, under the CC-BY-NC-SA 4.0 license.
It's quite a beast but I use git-annex for all my file storage and synchronisation purposes.
You can select precisely which files you want to keep in which machine.
Genuine question: is there a reason why Syncthing's ignore function doesn't work for you? Because that's what I would suggest, but it seems you're already aware of it.
ETA: Maybe Resilio Sync might work for you? It touts selective sync. Since it's based on the BitTorrent protocol, it might also chunk data, but it's worth checking out.
I wasn't aware that was an option, honestly. I shall investigate.
Funny that you mention Resilio, I literally came back just now to post it as a possible option. Unfortunately the selective sync is behind a paywall. $59.99 one time fee, which isn't terrible tbh. I'll have to see if they have a Pro trial after I test again with Syncthing. Thanks!
EDIT: Resilio does have a 14 day Pro trial. Messing with it now but I'm going to look at syncthing again before I commit.
Google Drive eliminated its full sync default a long time ago. Ironically, I have the opposite complaint -- I'd like some folders to be synchronized ALL the time, and some NEVER, and Google Drive no longer gives you any direct control over what gets synchronized. It's all controlled by some implacable internal algorithm with no exposed preferences.
Sounds like syncthing might be the ticket for you then. It can be a bit bewildering to set up, but once you do it works incredibly well. And you can ignore/exclude folders and files.
I use syncthing all the time. The ignore file is very powerful and you can get it to ignore whatever you want. The ignore file itself isnt synced across copies, but you can #include a file that is