Git WiKi Sync
Bring your GitHub or GitLab Wiki into VS Code as a local .wiki folder, then pull and push it like part of your daily workspace without mixing documentation commits into your main repository.
What It Solves
Most project Wikis live outside the code editor. That creates a gap:
- You read code in VS Code, but edit Wiki pages in a browser.
- AI coding tools miss important product, architecture, and runbook context stored in the Wiki.
- Documentation updates are easy to forget because they are not visible next to the code.
- In multi-root workspaces, each project needs its own Wiki instead of one shared
.wiki folder.
Git WiKi Sync closes that gap by cloning each project's Wiki repository into <project>/.wiki and adding it to your VS Code workspace.
At A Glance
| Capability |
What happens |
| Auto-detect Wiki remote |
Reads your project Git remote and infers the matching .wiki.git repository. |
Local .wiki folder |
Clones the Wiki beside your code, isolated from the main repository. |
| One-click Pull / Push |
Syncs Markdown changes between local .wiki and the remote Wiki. |
| Multi-root workspace support |
Adds a separate Wiki folder for every workspace project. |
| Clear project labels |
Shows .wiki for one project, or .wiki(project-name) when several Wikis are open. |
| Git credential reuse |
Uses the same Git access you already use for the project repository. |
How It Looks In A Workspace
Single project:
my-project
src/
package.json
.wiki/
home.md
Architecture.md
Multi-root workspace:
api-service
web-console
.wiki(api-service)
.wiki(web-console)
Each .wiki(...) folder maps back to its own project, so Pull and Push from the context menu operate on the correct Wiki.
Installation
Install from a VSIX file:
code --install-extension git-wiki-sync-x.y.z.vsix
Or install from the VS Code Extensions panel once published:
- Open Extensions.
- Search for
Git WiKi Sync.
- Select Install.
Usage
- Open a GitHub or GitLab project folder in VS Code.
- Make sure the remote repository has Wiki enabled.
- Reload VS Code or run a Git WiKi Sync command.
- The extension clones the matching Wiki repository into
<project>/.wiki.
- Edit Wiki Markdown files locally.
- Run
Git WiKi Sync: Pull Wiki or Git WiKi Sync: Push Wiki.
Commands are available from the Command Palette:
Git WiKi Sync: Pull Wiki
Git WiKi Sync: Push Wiki
Git WiKi Sync: Open Wiki in Explorer
Git WiKi Sync: Configure/Manage Token
You can also right-click a .wiki folder or a Markdown file inside .wiki and run Pull or Push from the Explorer/editor context menu.
Multi-Project Workspaces
When a VS Code workspace contains multiple projects, Git WiKi Sync handles each project independently:
- It scans every workspace folder that is not already a
.wiki folder.
- It clones each available Wiki into that project's own
.wiki directory.
- It adds every Wiki to the workspace.
- If more than one Wiki is visible, the folder name includes the project name, for example
.wiki(api-service).
This avoids the common failure mode where only the first workspace project's Wiki is shown or synced.
Requirements
- The project must be a Git repository.
- The Git remote URL must end with
.git.
- The matching Wiki repository must exist and be accessible.
- Your local Git credentials must be able to clone, pull, and push the Wiki repository.
For GitHub, create at least one Wiki page before syncing. GitHub may not expose a cloneable Wiki repository until the Wiki exists.
FAQ
Does it support self-hosted GitHub or GitLab?
Yes. If the project remote ends with .git, the extension infers the Wiki remote by replacing it with .wiki.git.
Are Wiki files committed to my main repository?
No. The extension adds .wiki/ to .gitignore so Wiki changes stay isolated from your application code.
Do I need a separate login?
Usually no. Git WiKi Sync uses your existing Git credentials. If you can clone and push the Wiki repository from the terminal, the extension should work with the same access.
What happens if several Wikis are open?
Each Wiki is shown separately. One Wiki appears as .wiki; multiple Wikis appear as .wiki(project-name) so you can see which project each Wiki belongs to.
License
Apache 2.0. See LICENSE.
Acknowledgements