Search...Search plugins and themes...
⌘K
Sign in
  • Get started
  • Download
  • Pricing
  • Enterprise
  • Account
  • Obsidian
  • Overview
  • Sync
  • Publish
  • Canvas
  • Mobile
  • Web Clipper
  • CLI
  • Learn
  • Help
  • Developers
  • Changelog
  • About
  • Roadmap
  • Blog
  • Resources
  • System status
  • License overview
  • Terms of service
  • Privacy policy
  • Security
  • Community
  • Plugins
  • Themes
  • Discord
  • Forum / 中文论坛
  • Merch store
  • Brand guidelines
Follow us
DiscordTwitterBlueskyThreadsMastodonYouTubeGitHub
© 2026 Obsidian
GitHub

SyncGit

Bhoopesh R KBhoopesh R K2k downloads

Sync your vault across devices using GitHub's REST API without requiring local Git.

Add to Obsidian
SyncGit screenshot
SyncGit screenshot
SyncGit screenshot
SyncGit screenshot
SyncGit screenshot
SyncGit screenshot
SyncGit screenshot
  • Overview
  • Scorecard
  • Updates12

Sync your Obsidian vault across all your devices — desktop, iOS, and Android — using GitHub's REST API. No local Git installation required.


What is this?

SyncGit is a community plugin that keeps your Obsidian vault synchronized across multiple devices using a private GitHub repository as the bridge. It handles three-way conflict resolution, offline detection, and cross-platform line-ending normalization automatically — so you can focus on your notes, not sync logistics.


Features

  • Automatic and manual sync via ribbon icon or command palette
  • Three-way conflict resolution with context (file sizes, line counts, timestamps)
  • Offline-aware — background sync is skipped silently when offline
  • Secure token storage — Personal Access Token stored in browser localStorage, never written to data.json
  • Smart delta hashing — unmodified files are skipped using metadata timestamps
  • Large file protection — files exceeding 25 MB are automatically skipped
  • Concurrent edit retries — automatic retry up to 3 times on race conditions
  • Dynamic status bar — real-time sync state at the bottom of Obsidian
  • Sync log — view recent sync history with the "View sync log" command
  • GitHub Enterprise support — configure a custom API base URL

Installation

From Obsidian Community Plugins (Recommended)

  1. Open Obsidian Settings.
  2. Navigate to Community plugins and ensure Restricted mode is turned off.
  3. Select Browse and search for SyncGit.
  4. Select Install, then Enable.

You can also open it directly in Obsidian: Install SyncGit.

Manual installation

  1. Download main.js, manifest.json, and styles.css from the latest Release.
  2. Create the folder <Vault>/.obsidian/plugins/sync-git/.
  3. Copy main.js, manifest.json, and styles.css into that folder.
  4. Reload Obsidian and enable the plugin under Settings → Community plugins.

Quick start

  1. Open Settings → SyncGit.
  2. Select your Setup mode and enter your credentials.
  3. Click the ribbon icon (☁️) or run the Sync now command.

For detailed setup instructions, authentication modes, commands, and troubleshooting, see USAGE.md.


Network disclosure

This plugin makes network requests to external services. As required by Obsidian Developer Policies:

Service URL Purpose
GitHub REST API https://api.github.com (default) or your custom hostname Upload, download, and commit vault files to a private GitHub repository

No analytics, telemetry, or tracking data is collected or transmitted. Vault contents are only transmitted to GitHub as part of the explicit sync operation you control.


Privacy and security

  • Your Personal Access Token is stored only in browser localStorage — it is never written into your vault folder or committed to any repository.
  • Vault file contents are only ever uploaded to the GitHub repository you configure. They are never sent to any third-party service.
  • Base64 encoding/decoding (btoa/atob): Runtime Base64 conversions are used strictly for communicating with GitHub's Git Blobs REST API (POST /git/blobs to upload file bytes and GET /git/blobs/:sha to decode downloaded file bytes). No executable code, tokens, URLs, or scripts are obfuscated or dynamically evaluated at runtime.
  • The plugin operates entirely offline when no sync is triggered.

Development and releases

Building from source

npm install
npm run dev    # Start compilation in watch mode
npm run build  # Production build (type-check and bundle into main.js)
npm run lint   # Run Obsidian-specific ESLint rules

Version bumping

This repository uses an automated version bump script (version-bump.mjs) wired to npm's version lifecycle hook:

npm version patch   # Bug fixes (e.g. 1.2.4 -> 1.2.5)
npm version minor   # Backwards-compatible features
npm version major   # Breaking changes

Running npm version updates package.json, invokes version-bump.mjs to synchronize manifest.json and versions.json, creates the git commit, and tags the release (without a leading v, as required by Obsidian).

To publish the release:

git push origin main --follow-tags

GitHub Actions will automatically build production assets (main.js, manifest.json, styles.css) and attach them to the release.


License

MIT © Bhoopesh R K

HealthExcellent
ReviewPassed
About
Sync your Obsidian vault across desktop, iOS, and Android using a private GitHub repo via the REST API with no local Git installation required. Handle three-way conflict resolution, offline-aware background skips, line-ending normalization, large-file protection, concurrent edit retries, and view real-time status and a sync log.
SyncingGitStatus bar
Details
Current version
1.3.0
Last updated
14 hours ago
Created
3 months ago
Updates
12 releases
Downloads
2k
Compatible with
Obsidian 1.13.0+
Platforms
Desktop, Mobile
License
MIT
Report bugRequest featureReport plugin
Sponsor
Support
Author
Bhoopesh R KBhoopesh R Kbhoopeshrk
bhoopeshrk.vercel.app
GitHubbhoopeshrk
GitHubbhoopeshrk
bhoopeshrk
gol_d._bhoopesh
  1. Community
  2. Plugins
  3. Syncing
  4. SyncGit

Related plugins

GitHub

GitHub Sync

Sync vault to personal GitHub.

Plugin Update Tracker

Know when installed plugins have updates and evaluate the risk of upgrading.

Autosave Control

An Obsidian plugin for delaying or disabling automatic saves.

Air Sync

Keep your vault in sync across devices without managing sync—sync only what changed, preserve conflicting edits, and use your own Google Drive, OneDrive, or Dropbox.

GitHub

Git Sync

Sync your vault across all devices using your own GitHub account. Free forever.

Syncthing Manager

Control panel for Syncthing. Monitor status, resolve conflicts, and force synchronization on Desktop and Mobile.

Self-hosted LiveSync

Sync vaults securely to self-hosted servers or WEBRTC.

Fast Note Sync

Real-time sync of your vaults across server, mobile, and web; shareable with anyone; supports REST and MCP integrations to build your personal AI knowledge base.

Git

Integrate Git version control with automatic backup and other advanced features.

Google Drive Sync

Syncs a vault into Google Drive for cross-platform use (works for iOS).