I have an app (Obsidian) that having this data structure:

Main Data/
├─ App Data/
│  ├─ Plugin Data/
│  │  ├─ Files.json
│  ├─ Files.json
├─ Files.md

I want to share the data to various people (or devices). Depending on their expertise level of the app, I want to have different types of sync to their devices:

Level Files in Main Data Files in App Data Files in Plugin Data
Novice/First setup 1-way Download once, then ignored 1-way
Advanced beginner 2-way Ignored 1-way
Competent 2-way Ignored Ignored

Can you suggest me some solutions for this? Here are what I have tried and their limitation:

  • Google Drive: lack of ignore feature
  • Syncthing: the management of devices and subfolders are too complicated when the network grows
  • Git: too advanced for non-technical users

The Wikipedia page Comparison of version-control software lists a great deal of software to try, but the criteria I need is not there.

I need it to have renames/moves and conflict detection. Other non-required options:

  • Free
  • Multi-platform: Windows, Mac, Android, iOS

1 Answer 1


My current solution is to make a custom installer and use git under the hood to clone the repo. The app will have an auto-pull feature, and if the user needs to push data upstream, they will need to be educated or tutored about git.

My next question: Simple installer-maker for minimal and graphical setup

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.