~kornellapacz/gmnigit

gmnigit/commits.go -rw-r--r-- 2.9 KiB
279d605b — Omar Polo 4 months ago
handle annotated tags too

Git has two types of pointers: annotated and lightweight ones.  gmnigit
was only handling lightweight ones (they are bare pointers to commits,
just like git branches).  This improve the tag support to handle
annotated tags too, which are pointers to full git objects with various
information, among which a pointer to the commit.
f5c1f8b9 — Omar Polo 4 months ago
The following patch creates an additional file in /refs/index.gmi with
the list of the tags and links to the relevant commit.  It follows the
companion specification for subscriptions, so users can easily subscribe
to that page to know when a release is tagged.

Please note that if a tag points to a commit that isn't reachable from
any branch, the link won't work.  This can happen if one created a
branch off a tag, done some work, tagged a new version and deleted the
branch.
use command line flags
refactor; split code into multiple files