Fetch external data sources (git repositories with wiki pages or RDF data), resolve commit SHAs, and pin them in wiki.lock. Without arguments, installs all sources declared in the sources: block of wiki.yml. With a URL, adds the source to wiki.yml first, then fetches and locks it.
You can use GitHub owner/repo shorthand instead of a full URL — EthanThatOneKid/solar-system-wiki expands to https://github.com/EthanThatOneKid/solar-system-wiki.git automatically.
Transitive dependencies are resolved recursively. wiki install reads each cloned source's own wiki.yml to discover its sources: block, fetches those transitive sources, and locks them too — forming a dependency tree. Circular dependency chains are detected and raise an error. If two sources declare the same dependency name with different URLs or refs, install fails with a conflict error.
Usage
wiki install
wiki install https://github.com/EthanThatOneKid/solar-system-wiki.git
wiki install https://github.com/EthanThatOneKid/solar-system-wiki.git#v0.1.0
wiki install EthanThatOneKid/solar-system-wiki
Options
| Flag | Description |
|---|---|
URL |
Git repository URL to add and install. Supports #ref pinning (branch, tag, or commit). If omitted, installs all sources from wiki.yml. |
Lockfile
wiki install produces wiki.lock in the same directory as wiki.yml. This machine-authored JSON file records the resolved commit SHA, requested ref, and fetch timestamp for each source. Check it into version control so builds are reproducible — the lockfile is the source of truth for which version of each source is used.
Source cache
Cloned repositories are cached under .wiki/sources/<name>/repo/ relative to the wiki config root. wiki install always fetches the latest remote refs (shallow clone, --depth 1) so it stays fast.
.gitignore
The .wiki/ source cache directory (and the _site/ build output) should not be committed to version control. wiki init scaffolds a .gitignore that includes both directories.