Syncing Assets and Files Across Machines

This is not specifically a Blender question as much as its pertaining to general project/file management but it certainly applies.

I’m looking for solutions to the issue of managing and syncing my project files, asset libraries and addons between my PC at home and my laptop that travels around with me. (Both Windows 11)

Typically how projects work for me - I spend the first half of a project on my laptop, as I’m with it more than I am home with my PC. I generally create and organize all my assets and addons on my laptop as well, where I’ve built up nearly 100gb of files, presets, assets etc and this master asset folder lives in my laptop’s documents. There’s two obvious problems with this method:

First, every time I need to update my asset folder on my PC I need to copy the entire 100gb folder to my PC via my synology NAS which lives in my home office, on my private network. This is tedious and takes forever.

Secondly, I can’t simply open a .Blend file, which was originally created on my laptop, on my PC - even if I’ve updated the asset folder - because the slight variations in device names with break the file pathing. It’s simple enough to relocate the missing file’s with blender file path feature but obviously this is very tedious as well and I essentially have to do this over and over again if I need to move back and forth between working on my laptop and my PC.

I’m sure this problem has been encountered, asked about and answered dozens of times but I cannot seem to find a simple solution this problem and it seems hard to believe that there wouldn’t be one. Any advice on file/project syncing across multiple devices would be greatly appreciated.

For the first part if I understand correctly, you currently re-sync the entire folder even if one file has changed. If this is the case, then there is lots of software that only sync what is changed. I am a fan of Rclone, SyncThing and FreeFileSync, although GoodSync is a paid alternative that has a nicer UI.
Rclone, GoodSync, and FreeFileSync work as traditional file syncing applications, they copy from one location to another. SyncThing works more peer to peer, meaning each device is a node, and each device can sync from each other.

For the second part, I can’t currently think of a good solution. Working directly from the NAS would solve it if you used the same mount point, but the speed will be slower. You could pack external data, which is likely the best option for now.

Google Drive, OneDrive, Dropbox, or whatever your preference amongst this types are built to handle he syncing and file path issues for you. We use a custom network share at work but it’s essentially just a reskin of Google Drive. Most of the studios we work with use Google Drive, one uses Dropbox

Thays a good suggestion, if @Wesley_Watson wanted to stay local, NextCloud or Own Cloud are good options that are easy to self-host.

If you don’t want to overcomplicate your life with self-hosted solutions, Joseph’s suggestion is obviously a solid choice.

But if you’d rather keep everything at home, it really depends on how powerful your NAS is, especially how much RAM it has.

Nextcloud is great, but it’s pretty heavy and might be overkill for what you’re looking for. It’s perfect if you want to set up a full-blown home office suite, but if you just need file syncing, it’s way too much.

On the other hand, the new version of OwnCloud Infinite Scale (OCIS), which was completely rewritten in Go, is fantastic compared to the old PHP-based version (like Nextcloud).

There’s also Seafile, which flies on pretty much any hardware. Personally, that’s what I’m running on my home server after trying out the other two. If all you need is file syncing, it’s fast, lightweight, and reliable.

Another thing to consider is how you’ll access all this from outside your home network. If you don’t want to deal with the hassle of setting up reverse proxies (and honestly, I’m not even sure how that works on Synology, my servers have been running Debian on plain PCs for ages), a Cloudflare tunnel is a great workaround especially if you’ve got your own domain. It’ll sort you out nicely without much fuss.

I have heard good things about Cloudflare tunnels, although when I tried to set it up once it is a bit confusing. From my experience Twingate is the easiest one to set up, and it is zero trust which means only actions that are explicitly allowed can be accessed, which helps with security. Tailscale is also another one, although I haven’t tried it.

I hadn’t heard of Twingate before, thanks for the recommendation! I’ll definitely check it out.

As for Cloudflare Zero Trust tunnels, I totally agree with you that they’re a bit confusing. The dashboard is packed with options, and on top of that, they completely revamped the UI not too long ago :sweat_smile: . But if I remember correctly, the whole process basically boils down to pointing your domain’s DNS to Cloudflare, installing cloudflared on your homelab machine(s), and then setting up subdomains in Zero Trust that link to whichever local services you want to expose.

One important thing to keep in mind, especially for something like Nextcloud, OCS, Seafile, etc., is that since you’ll be moving quite a bit of data, you might want to disable Cloudflare’s cache.

Anyway, when I set it up, I followed several super detailed tutorials on YouTube (there are tons of them) and got everything working smoothly on the first try. That was about a year ago (I was on Caddy before), and since then, zero issues. Plus, it’s a huge relief not having to manage all the security stuff myself. That’s one area where Cloudflare really shines, from conditional rules to geofencing, they’ve got you covered.

I know, I absolutely hate the new one. I understood the old one, now I have had to re-learn it all.

Ah yeah, that’s not too bad, I did that for a website once. It’s if you want to use it more like a VPN, with a client using WARP it gets confusing.