Keeping files in sync across devices can be difficult without relying on a premium product from a cloud provider. BitTorrent Sync (later Resilio Sync) uses torrent technology for effectvie peer-to-peer data transfer, leading to the free and open-source SyncThing.
SyncThing runs on all of my devices (Mac, Linux and Android) with a similar workflow for each, allowing me to set up an effective "mesh" of synced devices without relying on a central server. SyncThing performs well from a privacy standpoint: It's free and open-source, donation-powered and doesn't store any of my synced files in the cloud.
I use SyncThing to synchronise:
SyncThing also supports synchronising subdirectories in a synchronised directory. The example below shows how I can share different sets of music with my phone and my media centre.