|
|
||
|---|---|---|
| .editorconfig | ||
| .eslintignore | ||
| .eslintrc | ||
| .gitignore | ||
| .npmrc | ||
| LICENSE | ||
| README.md | ||
| esbuild.config.mjs | ||
| main.ts | ||
| manifest.json | ||
| package.json | ||
| styles.css | ||
| tsconfig.json | ||
| version-bump.mjs | ||
| versions.json | ||
README.md
GitHub Sync Plugin for Obsidian
🌟 Overview
This GitHub Sync Plugin allows you to synchronize your Obsidian notes with a GitHub repository using the GitHub API (without isomorphic-git). It works across Windows, Linux, Android, and iOS.
🚀 Features
- Clone repository (manual setup required)
- Pull latest changes from GitHub
- Commit with a default message
# - Push changes to GitHub
- Authentication via GitHub Personal Access Token (hidden after first input)
📥 Installation
Manual Installation
- Download the latest release from GitHub Releases.
- Copy these files to your Obsidian plugin directory:
dist/main.jsmanifest.jsonversions.json
- Restart Obsidian and enable the plugin from Settings → Community Plugins.
Plugin Folder Path:
- Windows:
%APPDATA%\Obsidian\plugins\github-sync - Linux:
~/.config/Obsidian/plugins/github-sync - Android:
/storage/emulated/0/Obsidian/.obsidian/plugins/github-sync - iOS: (Community Plugin installation required)
🔧 Setup
- Go to Plugin Settings (
Settings → Community Plugins → GitHub Sync) - Enter your GitHub details:
- Repository Owner (your GitHub username or organization)
- Repository Name
- Branch Name (default:
main) - Authentication Token (hidden after first input)
- Folder Path (subfolder in repo to sync, default:
/)
- Save settings and restart Obsidian.
📌 Usage
Pull Latest Changes
- Open Command Palette (
Ctrl + PorCmd + Pon macOS) - Search for Pull from GitHub and execute it.
- The latest changes will be downloaded into Obsidian.
Commit & Push
- Open Command Palette
- Search for Commit & Push and execute it.
- All files in the specified folder will be committed and pushed with the message
#.
🛠️ Build from Source
To build this plugin from source:
npm install
npm run build
This generates the dist/ folder with the necessary files.
📢 Contributing
Want to improve this plugin? Feel free to fork this repository and submit a pull request!
📜 License
This project is licensed under the MIT License.
❓ FAQ
Why is my authentication token hidden after first input?
This is a security feature to prevent accidental exposure of your GitHub token.
Can I sync only a specific folder from my repository?
Yes! Set the Folder Path in settings to the specific subfolder you want to sync.
How do I update the plugin?
Download the latest version and replace the existing files in your Obsidian plugin folder.
🚀 Enjoy seamless GitHub sync in Obsidian!