gmnigit
Static git gemini viewer written in golang. Inspired by stagit.
This repository is available at sourcehut and gemini.
Installation
Unfortunately because of `replace` directive in `go.mod` you cannot simply get binary by running `go get` but you can install it by running
git clone https://git.sr.ht/~kornellapacz/gmnigit cd gmnigit task build # or: `go build -o gmnigit`
place `gmnigit` binary somewhere in your `$PATH`.
Usage
Usage of gmnigit:
-dist string
destination path (if exists will be overwritten)
-max-commits int
Max number of commit to export, -1 to export all (default -1)
-name string
project name, mandatory if generating the tags page
-perms
show files permissions in browsable tree
-refs
generate the tags page
-repo string
path to repository
-url string
clone URL for end user (optional)
Example
gmnigit -repo path/do/repo -dist dist/path
Tips
You can automate building pages on push with git `post-receive` hook
#!/bin/sh while read -r _ _ ref; do [ "$ref" != "refs/heads/master" ] && continue gmnigit --repo . --dist /dest/dir done
TODO
- use `git2go` instead of `go-git`
- handle submodules
- read `description` and `url` files from git bare repositories