You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+56-52Lines changed: 56 additions & 52 deletions
Original file line number
Diff line number
Diff line change
@@ -1,101 +1,105 @@
1
-
# Git
1
+
# Obsidian Git Plugin
2
2
3
-
A Community Plugin for [Obsidian.md](https://obsidian.md)to manage your vault with Git.
3
+
A powerful community plugin for [Obsidian.md](Obsidian.md)that brings Git integration right into your vault. Automatically commit, pull, push, and see your changes — all within Obsidian.
4
4
5
-
## Documentation
5
+
## 📚 Documentation
6
6
7
-
Requirements, installation steps (including setup for mobile), tips and tricks, common issuesand more can be found in the [documentation](https://publish.obsidian.md/git-doc).
7
+
All setup instructions (including mobile), common issues, tips, and advanced configuration can be found in the 📖 [full documentation](https://publish.obsidian.md/git-doc).
8
8
9
-
For mobile users see[Mobile](#mobile) section below.
9
+
> 👉 Mobile users: Please check the dedicated[Mobile](#mobile) section below.
10
10
11
-
## Highlighted Features
11
+
## ✨ Key Features
12
12
13
-
- Automatic commit-and-sync (commit, pull and push) on a schedule.
14
-
- Pull commits from remote repository on Obsidian startup.
15
-
- Manage different repositories via Git submodules (Opt-in in settings) (Desktop only).
16
-
- Stage, commit and diff individual files via the Source Control View. Open it with the `Open Source Control View` command.
17
-
- List your commits and their changed files (like a `git log`) via the History View. Open it with the `Open History View` command.
18
-
- For viewing the detailed history of a file, I strongly recommend you the [Version History Diff](obsidian://show-plugin?id=obsidian-version-history-diff) plugin.
13
+
- 🔁 **Automatic commit-and-sync** (commit, pull, and push) on a schedule.
14
+
- 📥 **Auto-pull on Obsidian startup**
15
+
- 📂 **Submodule support** for managing multiple repositories (desktop only and opt-in)
16
+
- 🔧 **Source Control View** to stage/unstage, commit and diff files - Open it with the `Open source control view` command.
17
+
- 📜 **History View** for browsing commit logs and changed files - Open it with the `Open history view` command.
18
+
- 🔍 **Diff View** for viewing changes in a file - Open it with the `Open diff view` command.
19
+
- 🔗 GitHub integration to open files and history in your browser
19
20
20
-
### Source Control View
21
+
> 🧩 For detailed file history, consider pairing this plugin with the [Version History Diff](obsidian://show-plugin?id=obsidian-version-history-diff) plugin.
21
22
22
-
This view allows you to stage, unstage individual files and commit them. It also shows the status of each file in your vault.
23
+
## 🖥️ UI Previews
24
+
25
+
### 🔧 Source Control View
26
+
27
+
Manage your file changes directly inside Obsidian like stage/unstage individual files and commit them.
23
28
24
29

25
30
26
-
### History View
31
+
### 📜 History View
27
32
28
-
This view shows the commit history of your repository. You can see the commit message, author, date, and changed files. Author and date are disabled by default as shown in the screenshot, but can be enabled in the settings.
33
+
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.
> Not exhaustive - these are just some of the most common commands. For a full list, see the Command Palette in Obsidian.
39
46
40
-
- Changes
47
+
-🔄 Changes
41
48
-`List changed files`: Lists all changes in a modal
42
49
-`Open diff view`: Open diff view for the current file
43
50
-`Stage current file`
44
51
-`Unstage current file`
45
-
- Commit
52
+
-✅ Commit
46
53
-`Commit all changes`: Only commits all changes without pushing
47
54
-`Commit all changes with specific message`: Same as above, but with a custom message
48
55
-`Commit staged`: Commits only files that have been staged
49
56
-`Commit staged with specific message`: Same as above, but with a custom message
50
-
- Commit-and-sync
57
+
-🔀 Commit-and-sync
51
58
-`Commit-and-sync`: With default settings, this will commit all changes, pull, and push
52
59
-`Commit-and-sync with specific message`: Same as above, but with a custom message
53
60
-`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.
54
-
- Remote
55
-
-`Push`
56
-
-`Pull`
61
+
- 🌐 Remote
62
+
-`Push`, `Pull`
57
63
-`Edit remotes`
58
64
-`Remove remote`
59
65
-`Clone an existing remote repo`: Opens dialog that will prompt for URL and authentication to clone a remote repo
60
66
-`Open file on GitHub`: Open the file view of the current file on GitHub in a browser window. Note: only works on desktop
61
67
-`Open file history on GitHub`: Open the file history of the current file on GitHub in a browser window. Note: only works on desktop
62
-
-Local
68
+
-🏠 Manage local repository
63
69
-`Initialize a new repo`
64
70
-`Create new branch`
65
71
-`Delete branch`
66
72
-`CAUTION: Delete repository`
67
-
-Source Control View
73
+
-🧪 Miscellaneous
68
74
-`Open source control view`: Opens side pane displaying [Source control view](#sidebar-view)
69
75
-`Edit .gitignore`
70
-
-`Add file to .gitignore`: Add current file to .gitignore
76
+
-`Add file to .gitignore`: Add current file to `.gitignore`
71
77
72
-
## Desktop
78
+
## 💻 Desktop Notes
73
79
74
-
## Authentication
80
+
### 🔐 Authentication
75
81
76
-
Authentication may require additional setup. See more in the [Authentication documentation](https://publish.obsidian.md/git-doc/Authentication)
82
+
Some Git services may require further setup for HTTPS/SSH authentication. Refer to the [Authentication Guide](https://publish.obsidian.md/git-doc/Authentication)
77
83
78
84
### Obsidian on Linux
79
85
80
-
- ⚠ Snap is not supported.
81
-
- ⚠ Flatpak is not recommended, because it doesn't have access to all system files.
82
-
83
-
Please use AppImage instead ([Linux installation guide](https://publish.obsidian.md/git-doc/Installation#Linux))
84
-
85
-
## Mobile
86
+
- ⚠️ Snap is not supported.
87
+
- ⚠️ Flatpak is not recommended, because it doesn't have access to all system files.
88
+
- ✅ Please use AppImage or a full access installation of your system's package manager instead ([Linux installation guide](https://publish.obsidian.md/git-doc/Installation#Linux))
86
89
87
-
The git implementation on mobile is **very unstable**!
90
+
## 📱 Mobile Support (⚠️ Experimental)
88
91
89
-
### Restrictions
92
+
The Git implementation on mobile is **very unstable**! I would not recommend using this plugin on mobile, but try other syncing services.
93
+
> 🧪 The Git plugin works on mobile thanks to [isomorphic-git](https://isomorphic-git.org/), 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.
90
94
91
-
The mobile version is supported by [isomorphic-git](https://isomorphic-git.org/), which is a re-implementation of Git in JavaScript, because you cannot use native Git on Android or iOS.
95
+
### ❌ Mobile Limitations
92
96
93
-
- SSH authentication is not supported ([isomorphic-git issue](https://github.com/isomorphic-git/isomorphic-git/issues/231))
94
-
-Repo size is limited, because of memory restrictions
-Limited repo size, because of memory restrictions
99
+
-No rebase merge strategy
100
+
-No submodules support
97
101
98
-
### Performance on mobile
102
+
### ⚠️ Performance Caveats
99
103
100
104
> [!caution]
101
105
> Depending on your device and available free RAM, Obsidian may
@@ -110,17 +114,17 @@ The mobile version is supported by [isomorphic-git](https://isomorphic-git.org/)
110
114
111
115
The initial clone took 0m25s. After that, the most time consuming part is to check the whole working directory for file changes. On this setup, checking all files for changes to stage takes 03m40s. Other commands like pull, push and commit are very fast (1-5 seconds).
112
116
113
-
The fastest way to work on mobile if you have a large repo/vault is to stage individual files and only commit staged files.
114
-
115
-
## Contact
117
+
### Tips for Mobile Use:
116
118
117
-
The Line Authoring feature was developed by [GollyTicker](https://github.com/GollyTicker), so any questions may be best answered by him.
119
+
The fastest way to work on mobile if you have a large repo/vault is to stage individual files and only commit staged files.
118
120
119
-
If you have any kind of feedback or questions, feel free to reach out via GitHub issues or `vinzent3` on [Obsidian Discord server](https://discord.com/invite/veuWUTm).
121
+
## 🙋 Contact & Credits
120
122
121
-
This plugin was initial developed by [denolehov](https://github.com/denolehov). Since March 2021, it's me [Vinzent03](https://github.com/Vinzent03) who is developing this plugin. That's why the GitHub repository got moved to my account in July 2024.
123
+
- The Line Authoring feature was developed by [GollyTicker](https://github.com/GollyTicker), so any questions may be best answered by him.
124
+
- This plugin was initial developed by [denolehov](https://github.com/denolehov). Since March 2021, it's me [Vinzent03](https://github.com/Vinzent03) who is developing this plugin. That's why the GitHub repository got moved to my account in July 2024.
125
+
- If you have any kind of feedback or questions, feel free to reach out via GitHub issues or `vinzent3` on [Obsidian Discord server](https://discord.com/invite/veuWUTm).
122
126
123
-
## Support
127
+
## ☕ Support
124
128
125
129
If you find this plugin useful and would like to support its development, you can support me on Ko-fi.
0 commit comments