Skip to content

GitShelf v0.1.1

Latest

Choose a tag to compare

@Loping151 Loping151 released this 01 Jul 00:43

First public release of GitShelf — a self-hosted, read-only Git repository browser.

Point it at a folder of bare/mirror repos (e.g. your nightly git clone --mirror
GitHub backups) and read them like GitHub: file tree, rich previews
(code, Markdown, PDF, images, audio/video, CSV, JSON), commit history and
diffs, blame, code search, and exported issues / PRs / releases — all read in
place, zero copy.

Install

Download the archive for your platform below, extract, and run:

cp gitshelf.example.toml gitshelf.toml   # edit repo_source.path
./gitshelf -config gitshelf.toml         # http://127.0.0.1:8888

Auth is on by default — the first visit creates an admin account.
Verify downloads against SHA256SUMS.

Highlights

  • In-place, zero-copy reading of existing *.git mirrors; config-driven.
  • Pluggable render pipeline (code/Markdown/PDF/images/media/CSV/JSON).
  • Markdown: sanitized inline HTML, relative image/link resolution, code-copy buttons.
  • Branches/tags, diffs (incl. merge commits), compare, blame, git grep.
  • json-export metadata for issues/PRs/releases — accepts both bare-array and
    GitHub GraphQL connection ({nodes:[…]}) shapes.
  • Auth on by default (bcrypt, first-run setup wizard); strict CSP;
    option-injection-safe git calls.

README · 中文说明