readme (view raw)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 | elgit
-----
A git web frontend written in Go, forked from elgit after the author moved on.
FORK CHANGES
• Uses gomponents instead of html/template.
• Better integration with [gitolite](https://gitolite.com/gitolite/index.html)
• repo.ignore is ignored: only repositories listed in projects.list are shown.
• Supports subdirectories
FEATURES
• Cloning over http(s).
• Less archaic HTML.
• Not CGI.
INSTALLING
Clone it, 'go build' it.
CONFIG
Uses yaml for configuration. Looks for a 'config.yaml' in the current
directory by default; pass the '--config' flag to point it elsewhere.
Example config.yaml:
repo:
root: /var/lib/gitolite
readme:
- readme
- README
- readme.md
- README.md
mainBranch:
- master
- main
meta:
title: git good
description: i think it's a skill issue
syntaxHighlight: monokailight
server:
name: git.icyphox.sh
host: 127.0.0.1
port: 5555
These options are fairly self-explanatory, but of note are:
• repo.root: where all your git repos live (or die). This should contain projects.list
and repositories/
• repo.readme: readme files to look for.
• repo.mainBranch: main branch names to look for.
• repo.unlisted: repos to hide, relative to root/repositories.
• server.name: used for go-import meta tags and clone URLs.
• meta.syntaxHighlight: this is used to select the syntax theme to render. If left
blank or removed, the native theme will be used. If an invalid theme is set in this field,
it will default to "monokailight". For more information
about themes, please refer to chroma's gallery [1].
NOTES
• Run elgit behind a TLS terminating proxy like relayd(8) or nginx.
• Cloning only works in bare repos -- this is a limitation inherent to git. You
can still view non-bare repos just fine in elgit.
• Pushing over https, while supported, is disabled because auth is a
pain. Use ssh.
• Paths are unveil(2)'d on OpenBSD.
LICENSE
elgit is licensed under MIT.
[1]: https://swapoff.org/chroma/playground/
|