|
||
---|---|---|
.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.js
manifest.json
versions.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 + P
orCmd + P
on 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!