Been wildly frustrated these past few weeks and want to see if I'm not the only one. Considering building a tool for my needs in the space and would love to hear if anyone else have them too
1. Dropbox automatically syncs all files right away. Github requires manual push, and does not sync new/unstaged changes (like intentionally .ignored .env files).
2. Private repositories used to be a Github paid feature.
3. Less "clutter" in my Github account.
4. More generally, I keep almost all important non-OS files in Dropbox including my home directory and portable apps.
- Simple way to ensure the files I don't want to lose are backed up.
- After a fresh OS (re-)install, just installing Dropbox gets my system 90% set up and ready for use.
- (Theoretically) I can work on my files from a USB drive on any computer.
I use Google Drive to sync my uncommitted project code between my big laptop and my small laptop.
In theory, I could just open the small laptop and let it sync for a few minutes, then head out.
In practice, Google Drive does not sync file permissions, and at least one renamed my entire folder $foldername (1), breaking everything and requiring two hours and a lot of bandwidth to fix.
It also can't ignore directories that are there, but don't need to be synced. For example, build directories that contain large files that can be regenerated on the fly.
I would love to use local programs and rely on these fine storage systems as the distributed storage for the programs. However I never know if I can trust them to behave properly in this setup. Dropbox in particular looks like it always wants to disable these types of setups, rewrite common apps themselves and force you to use them.
- There's no need to sync these directories. They can be recreated very quickly via `npm install` but the tons of tiny files take forever to sync.
- In addition, Dropbox locks these files causing npm to fail. So I often found myself pausing Dropbox just so I could use npm.
Fortunately, I found two solutions:
1. A script to tell DB to ignore node_modules directories based on: https://stackoverflow.com/a/69655523/117030
2. OR https://www.insynchq.com/ can be configured with .gitignore-style rules.