NeoGDSync logo

NeoGDSync

Lightweight Google Drive sync plugin for [Obsidian](https://obsidian.md). ## Features - **Smart Sync** — auto conflict detection, only syncs changed files - **Force Push** — local vault → Google Drive - **Force Pull** — Google Drive → local vault - **Conflict handling** — saves Drive copy as a conflict file, never overwrites silently - **Path-based index** — fast, no full crawl needed after first sync - **Version history** — optionally keep file revisions on Drive - **Configurable excludes** — glob patterns to skip files/folders - **URI handler** — `obsidian://neogdsync?mode=smart|push|pull` for automation ## Setup 1. Install the plugin 2. Go to **Settings → NeoGDSync** 3. Enter your **Google OAuth2 Refresh Token** 4. Enter your **Google Drive Vault Root Folder ID** (the Drive folder that maps to your vault root) 5. Click the ☁ ribbon icon or run a command to sync ## Getting a Refresh Token This plugin uses a standard OAuth2 refresh token with read/write access to Google Drive. You can obtain one via: - The [Google Drive for Desktop](https://www.google.com/drive/download/) OAuth flow - Any OAuth2 tool using scope `https://www.googleapis.com/auth/drive` The token is stored locally in your vault's plugin data and never leaves your device except to authenticate with Google. ## Commands | Command | Description | |---------|-------------| | Smart Sync | Detect and sync only changed files, with conflict detection | | Force Push | Upload all local changes to Drive | | Force Pull | Download all Drive changes to local | | Rebuild Drive Index | Re-crawl Drive vault folder to rebuild index | | Show Conflicts | View detected conflicts | ## URI Handler Trigger sync from outside Obsidian (Shortcuts, scripts, etc.): ``` obsidian://neogdsync?mode=smart obsidian://neogdsync?mode=push obsidian://neogdsync?mode=pull ``` ## License MIT