Zurück zum Ranking

Vinzent03/obsidian-git

TypeScript

Integrate Git version control with automatic commit-and-sync and other advanced features in Obsidian.md

obsidian-mdobsidian-pluginobsidiangit
Sterne-Wachstum
Sterne
11.6k
Forks
601
Wochenwachstum
Issues
114
5k10k
Okt. 2020Sept. 2022Aug. 2024Juli 2026
Artefaktenpmnpm install obsidian-git
README

Obsidian Git Plugin

A powerful community plugin for Obsidian.md that brings Git integration right into your vault. Automatically commit, pull, push, and see your changes — all within Obsidian.

📚 Documentation

All setup instructions (including mobile), common issues, tips, and advanced configuration can be found in the 📖 full documentation.

Mobile users: The plugin is highly unstable ⚠️ ! Please check the dedicated Mobile section below.

Key Features

  • 🔁 Automatic commit-and-sync (commit, pull, and push) on a schedule.
  • 📥 Auto-pull on Obsidian startup
  • 📂 Submodule support for managing multiple repositories (desktop only and opt-in)
  • 🔧 Source Control View to stage/unstage, commit and diff files - Open it with the Open source control view command.
  • 📜 History View for browsing commit logs and changed files - Open it with the Open history view command.
  • 🔍 Diff View for viewing changes in a file - Open it with the Open diff view command.
  • 📝 Signs in the editor to indicate added, modified, and deleted lines/hunks (desktop only).
  • GitHub integration to open files and history in your browser

For detailed file history, consider pairing this plugin with the Version History Diff plugin.

UI Previews

🔧 Source Control View

Manage your file changes directly inside Obsidian like stage/unstage individual files and commit them.

Source Control View

📜 History View

Show the commit history of your repository. The commit message, author, date, and changed files can be shown. Author and date are disabled by default as shown in the screenshot, but can be enabled in the settings.

History View

🔍 Diff View

Compare versions with a clear and concise diff viewer. Open it from the source control view or via the Open diff view command.

Diff View

📝 Signs in the Editor

View line-by-line changes directly in the editor with added, modified, and deleted line/hunk indicators. You can stage and reset changes right from the signs. There also commands to navigate between hunks and stage/reset hunks under the cursor. Needs to be enabled in the plugin settings.

Signs

Available Commands

Not exhaustive - these are just some of the most common commands. For a full list, see the Command Palette in Obsidian.

  • 🔄 Changes
    • List changed files: Lists all changes in a modal
    • Open diff view: Open diff view for the current file
    • Stage current file
    • Unstage current file
    • Discard all changes: Discard all changes in the repository
  • ✅ Commit
    • Commit: If files are staged only commits those, otherwise commits only files that have been staged
    • Commit with specific message: Same as above, but with a custom message
    • Commit all changes: Commits all changes without pushing
    • Commit all changes with specific message: Same as above, but with a custom message
  • 🔀 Commit-and-sync
    • Commit-and-sync: With default settings, this will commit all changes, pull, and push
    • Commit-and-sync with specific message: Same as above, but with a custom message
    • Commit-and-sync and close: Same as Commit-and-sync, but if running on desktop, will close the Obsidian window. Will not exit Obsidian app on mobile.
  • 🌐 Remote
    • Push, Pull
    • Edit remotes: Add new remotes or edit existing remotes
    • Remove remote
    • Clone an existing remote repo: Opens dialog that will prompt for URL and authentication to clone a remote repo
    • Open file on GitHub: Open the file view of the current file on GitHub in a browser window. Note: only works on desktop
    • Open file history on GitHub: Open the file history of the current file on GitHub in a browser window. Note: only works on desktop
  • 🏠 Manage local repository
    • Initialize a new repo
    • Create new branch
    • Delete branch
    • CAUTION: Delete repository
  • 🧪 Miscellaneous
    • Open source control view: Opens side pane displaying Source control view
    • Open history view: Opens side pane displaying History view
    • Edit .gitignore
    • Add file to .gitignore: Add current file to .gitignore

💻 Desktop Notes

🔐 Authentication

Some Git services may require further setup for HTTPS/SSH authentication. Refer to the Authentication Guide

Obsidian on Linux

  • ⚠️ Snap is not supported due to its sandboxing restrictions.
  • ⚠️ Flatpak is not recommended, because it doesn't have access to all system files. They are actively fixing many issues, but there are still issues. Especially with more advanced setups.
  • ✅ Please use AppImage or a full access installation of your system's package manager instead (Linux installation guide)

📱 Mobile Support (⚠️ Experimental)

The Git implementation on mobile is very unstable! I would not recommend using this plugin on mobile, but try other syncing services.

One such alternative is GitSync, which is available on both Android and iOS. It is not associated with this plugin, but it may be a better option for mobile users. A tutorial for setting it up can be found here.

🧪 The Git plugin works on mobile thanks to isomorphic-git, a JavaScript-based re-implementation of Git - but it comes with serious limitations and issues. It is not possible for an Obsidian plugin to use a native Git installation on Android or iOS.

❌ Mobile Feature Limitations

  • No SSH authentication (isomorphic-git issue)
  • Limited repo size, because of memory restrictions
  • No rebase merge strategy
  • No submodules support

⚠️ Performance Caveats

[!caution] Depending on your device and available free RAM, Obsidian may

  • crash on clone/pull
  • create buffer overflow errors
  • run indefinitely.

It's caused by the underlying git implementation on mobile, which is not efficient. I don't know how to fix this. If that's the case for you, I have to admit this plugin won't work for you. So commenting on any issue or creating a new one won't help. I am sorry.

Tips for Mobile Use:

If you have a large repo/vault I recommend to stage individual files and only commit staged files.

🙋 Contact & Credits

  • The Line Authoring feature was developed by GollyTicker, so any questions may be best answered by her.
  • This plugin was initial developed by denolehov. Since March 2021, it's me Vinzent03 who is developing this plugin. That's why the GitHub repository got moved to my account in July 2024.
  • If you have any kind of feedback or questions, feel free to reach out via GitHub issues.

☕ Support

If you find this plugin useful and would like to support its development, you can support me on Ko-fi.

ko-fi

Ähnliche Repositories
khoj-ai/khoj

Your AI second brain. Self-hostable. Get answers from the web or your docs. Build custom agents, schedule automations, do deep research. Turn any online or local LLM into your personal, autonomous AI (gpt, claude, gemini, llama, qwen, mistral). Get started - free.

PythonPyPIGNU Affero General Public License v3.0semantic-searchemacs
khoj.dev
35.9k2.3k
obsidianmd/obsidian-releases

Community plugins list, theme list, and releases of Obsidian.

obsidian-mdobsidian
obsidian.md
20k7.4k
jackyzha0/quartz

🌱 a fast, batteries-included static-site generator that transforms Markdown content into fully functional websites

TypeScriptnpmMIT Licensedigital-gardenobsidian-md
quartz.jzhao.xyz
12.8k4k
blacksmithgu/obsidian-dataview

A data index and query language over Markdown files, for https://obsidian.md/.

TypeScriptnpmMIT Licenseobsidian-mdobsidian-plugin
blacksmithgu.github.io/obsidian-dataview/
9.2k545
windingwind/zotero-better-notes

Everything about note management. All in Zotero.

TypeScriptnpmGNU Affero General Public License v3.0knowledgemarkdown
8k264
brianpetro/obsidian-smart-connections

Find related notes and excerpts while writing. Your link building copilot displays relevant content in graph + list view. A local embedding model powers semantic search. Zero setup. No API key.

JavaScriptnpmOtherchatgptembeddings
smartconnections.app
5.3k330
kepano/obsidian-minimal

A distraction-free and highly customizable theme for Obsidian.

CSSnpmMIT Licenseobsidianobsidian-md
minimal.guide
5.2k263
SilentVoid13/Templater

A template plugin for obsidian

TypeScriptnpmGNU Affero General Public License v3.0obsidian-mdobsidian-plugin
silentvoid13.github.io/Templater
5.2k322
obsidian-community/obsidian-kanban

Create markdown-backed Kanban boards in Obsidian.

TypeScriptnpmGNU General Public License v3.0obsidian-mdobsidian-plugin
publish.obsidian.md/kanban/
4.4k432
obsidianmd/obsidian-sample-plugin

Template for Obsidian community plugins with build configuration and development best practices.

TypeScriptnpmBSD Zero Clause Licenseobsidianobsidian-md
docs.obsidian.md
4.4k1.7k
kepano/kepano-obsidian

My personal Obsidian vault template. A bottom-up approach to note-taking and organizing things I am interested in.

MIT Licensemarkdownobsidian
stephango.com/vault
4.1k328
basicmachines-co/basic-memory

AI conversations that actually remember. Never re-explain your project to your AI again. Join our Discord: https://discord.gg/tyvKNccgqN

PythonPyPIGNU Affero General Public License v3.0aiclaude
basicmemory.com
3.5k232