▲ 4 r/git+1 crossposts

git-hooks-ext, semantic branch and tag events for Git hooks

I wanted Git hooks for semantic ref events like branch-created, branch-deleted, tag-created, and tag-renamed. Git already has the low-level reference-transaction hook, but it exposes raw ref updates, so every consumer has to interpret those updates itself.

I built git-hooks-ext, a small C helper that turns those transactions into higher-level hook events. It supports classic hook files as well as the newer config-based git hook run mechanism. It currently handles branches, remote branches, tags, stashes, and notes. Rename detection is necessarily best-effort because reference-transaction exposes ref changes rather than user intent.

There are packages for Homebrew, Debian/Ubuntu, Fedora, Arch, and Alpine, and the project is GPL-2.0-only.

I'm especially interested in feedback on whether these kinds of semantic ref events would make sense upstream in Git itself, and on the event API/naming.

github.com
u/Ok_Produce3836 — 27 days ago
▲ 10 r/commandline+1 crossposts

4bit - Terminal Scheme Designer

This is an application I wrote about 13 years ago. Back then, it became quite popular on r/linux. Recently, I rewrote it from scratch and added support for generating monochromatic, two-color, and three-color schemes.

ciembor.github.io
u/Ok_Produce3836 — 5 months ago