Skip to content

Obsidian + GitHub Wiki Workflow

This guide explains how to use Obsidian as your editor for contributing to Irregularpedia, with GitHub for version control and collaboration.

BenefitDescription
Local editingWork offline, use your preferred editor
Bidirectional linksSee connections between wiki pages
Graph viewVisualize knowledge relationships
Version controlTrack changes, collaborate, never lose work
No vendor lock-inPlain markdown files you own


Open your terminal and clone the wiki repository:

Terminal window
# Using HTTPS
git clone https://github.com/irregularchat/wiki.git
# Or using SSH (if you have SSH keys configured)
git clone git@github.com:irregularchat/wiki.git

For the IrregularChat Forgejo instance:

Terminal window
git clone https://git.irregularchat.com/irregulars/IrregularChatWiki.git
  1. Open Obsidian
  2. Click Open folder as vault
  3. Navigate to the cloned repository folder
  4. Select the src/content/docs folder as your vault root

Go to Settings (gear icon) and configure:

  • New link format: Relative path to file
  • Use [[Wikilinks]]: OFF (use standard markdown links)
  • Default location for new notes: Same folder as current file
  • Default editing mode: Source mode (recommended for markdown)
  • Show frontmatter: ON

Always pull the latest changes before starting work:

Terminal window
cd /path/to/IrregularChatWiki
git pull origin main

Or use the Obsidian Git plugin (see below).

  1. Create a new file in the appropriate folder under src/content/docs/
  2. Add frontmatter at the top:
---
title: "Your Page Title"
description: "Brief description for search and previews"
---
  1. Write your content in markdown
  2. Save the file with a kebab-case name: my-new-page.md
  1. Navigate using Obsidian’s file explorer or search (Ctrl/Cmd + O)
  2. Make your changes
  3. Save (Ctrl/Cmd + S)

Use relative markdown links:

<!-- Link to page in same folder -->
[Research Tools](./research-tools.md)
<!-- Link to page in different folder -->
[Matrix Guide](/matrix/element-matrix-messenger.md)
<!-- Link with anchor -->
[Getting Started](#getting-started)

Terminal window
# Check what changed
git status
# Stage your changes
git add src/content/docs/your-file.md
# Or stage all changes
git add -A
# Commit with a descriptive message
git commit -m "docs: Add guide for drone regulations"
# Push to remote
git push origin main

Install the Obsidian Git community plugin for a GUI experience:

  1. Go to Settings → Community plugins
  2. Disable Restricted mode
  3. Click Browse and search for “Obsidian Git”
  4. Install and enable it
SettingValue
Auto pull interval10 minutes
Auto push after commitON
Show status barON
Commit messagedocs: {{date}} updates
  • Pull: Ctrl/Cmd + P → “Obsidian Git: Pull”
  • Commit: Ctrl/Cmd + P → “Obsidian Git: Commit all changes”
  • Push: Ctrl/Cmd + P → “Obsidian Git: Push”

These Obsidian plugins enhance the wiki editing experience:

PluginPurpose
Obsidian GitGit integration without leaving Obsidian
LinterAuto-format markdown on save
Paste URL into selectionClean link pasting
Advanced TablesEasy table editing
Editor Syntax HighlightCode block highlighting
OutlinerBetter list manipulation

  • Use kebab-case for filenames: my-guide-name.md
  • Keep names descriptive but concise
  • Avoid special characters

Every page needs at minimum:

---
title: "Page Title"
---

Optional but recommended:

---
title: "Page Title"
description: "One-line description for SEO and previews"
tags: [research, osint, tools]
---

Use Starlight’s callout syntax:

:::note
This is a note callout.
:::
:::tip[Pro Tip]
This is a tip with a custom title.
:::
:::caution
This is a warning.
:::
:::danger
This is a danger/error callout.
:::
  1. Place images in src/assets/ or public/
  2. Reference them:
![Alt text](../../../assets/my-image.png)

If you get a merge conflict when pulling:

  1. Open the conflicted file
  2. Look for conflict markers:
    <<<<<<< HEAD
    Your local changes
    =======
    Remote changes
    >>>>>>> origin/main
  3. Edit to keep the correct content (remove markers)
  4. Save, commit, and push

  • Pull before starting work
  • Write descriptive commit messages
  • Keep commits focused (one topic per commit)
  • Test links work before committing
  • Add frontmatter to every page
  • Commit node_modules or build artifacts
  • Force push to main
  • Leave merge conflicts unresolved
  • Create orphan pages (no links to them)

Terminal window
git pull --rebase origin main

Check your SSH keys or use HTTPS with a personal access token:

Terminal window
git remote set-url origin https://github.com/irregularchat/wiki.git

Ensure you opened src/content/docs as the vault root, not the repository root.

The .git folder must be accessible. If you opened a subfolder as vault, configure the plugin’s “Custom base path” to point to the repo root.


ActionCommand / Shortcut
Pull latestgit pull or Ctrl+P → “Git: Pull”
Stage allgit add -A
Commitgit commit -m "message"
Pushgit push or Ctrl+P → “Git: Push”
Check statusgit status
Search filesCtrl/Cmd + O
Search contentCtrl/Cmd + Shift + F
Command paletteCtrl/Cmd + P


Questions? Ask on Q&A or the Forum.