From a3324b7e71ec48daab81981e7d85967a590d4f79 Mon Sep 17 00:00:00 2001 From: Christoph Schlosser Date: Fri, 19 Sep 2025 19:21:11 +0200 Subject: g2h: Add utility script Also move the sources into the more conventional src/g2h dir --- README.md | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) (limited to 'README.md') diff --git a/README.md b/README.md index b22dc83..48767e8 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,6 @@ # g2h - Generate Hugo style markdown pages from your git repository history This program allows you to generate markdown files to have a static web based interface for navigating git repositores. -Something like [cgit](https://git.zx2c4.com/cgit/) for static websites, like [stagit](https://codemadness.org/stagit.html), but emitting Markdown for use in [Hugo](https://gohugo.io)[^1]. ## Goals @@ -14,7 +13,7 @@ Something like [cgit](https://git.zx2c4.com/cgit/) for static websites, like [st - Provide codesearch. - Replacement for Git forges. -- Replace cgit. +- Replace `cgit`. - Work for large projects, as they may be found in a company (like) setting. - Implement any work that should be taken care of by Hugo, e.g. combining multiple projects onto a single page, feeds and custom styling. @@ -23,9 +22,9 @@ Something like [cgit](https://git.zx2c4.com/cgit/) for static websites, like [st Let's assume your git project is in `~/development/project` and the sources for your static site are in `~/web/page`. Then you would run this command: ```bash -g2h --repo ~/development/project --out ~/web/page --title "My awesome project" --static-subdir project --content-subdir git/project +g2h --repo ~/development/project --out ~/web/page --name "My awesome project" --content-subdir git/project ``` -The markdown files for Hugo will be placed in `~/web/page/content/git/project` and static files, like tarballs for each commit and individual file hashes, into `~/web/page/static/project`. +The markdown files for Hugo will be placed in `~/web/page/content/git/project`. For a full list of options, their defaults and how they're changing the behavior of the program run `g2h --help`. ## Features @@ -62,9 +61,14 @@ For a full list of options, their defaults and how they're changing the behavior - [ ] Add button to download raw file. - [x] Nav bar for navigating the pages mentioned above. - [ ] Link to special readme, if a readme can be found, rendering markdown. -- [ ] Wrapper script that takes care of `venv` setup. +- [x] Wrapper script that takes care of `venv` setup. - [ ] Limit to certain branch(es). - [ ] Limit commit range. - [ ] Parallelize generating output. +## Similar projects + +- [cgit](https://git.zx2c4.com/cgit/) does everything `g2h` does and more, but not as static websites. +- [stagit](https://codemadness.org/stagit.html) generates HTML instead of emitting Markdown for a consistent style in [Hugo](https://gohugo.io)[^1]. + [^1]: I'm using Hugo but any static site generator with a similar layout should work. -- cgit v1.2.3