Skip to content

Commit eb13a2f

Browse files
committed
rn-131: Add links to news, articles, tools, and services
1 parent 8d41ccd commit eb13a2f

File tree

1 file changed

+217
-0
lines changed

1 file changed

+217
-0
lines changed

rev_news/drafts/edition-131.md

Lines changed: 217 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -114,15 +114,232 @@ This edition covers what happened during the months of December 2025 and January
114114

115115
__Various__
116116

117+
+ [A data model for Git (and other docs updates)](https://jvns.ca/blog/2026/01/08/a-data-model-for-git/)
118+
by Julia Evans on her blog
119+
(see [comments on Mastodon](https://comments.jvns.ca/post/115861337435768520)
120+
and on [LWN\.net announcement](https://lwn.net/Articles/1053595/)).
121+
+ [SQL Server Management Studio 22 Git Integration](https://www.mssqltips.com/sqlservertip/11585/ssms-22-git-integration/)
122+
by Daniel Calbimonte on MSSQLTips.
123+
117124

118125
__Light reading__
119126

127+
+ [Diff Algorithm Spelunking](https://dacharycarey.com/2025/12/29/diff-algorithm-spelunking/)
128+
by Dachary Carey.
129+
+ See also [Difftastic](https://difftastic.wilfred.me.uk/),
130+
a structural diff tool that understands syntax,
131+
first mentioned in [Git Rev News Edition #86](https://git.github.io/rev_news/2022/04/30/edition-86/),
132+
and [Delta](https://dandavison.github.io/delta/),
133+
a syntax-highlighting pager for git, diff, and grep output,
134+
first mentioned in [Git Rev News Edition #86](https://git.github.io/rev_news/2022/04/30/edition-86/).
135+
+ [Git Rebase for the Terrified](https://www.brethorsting.com/blog/2026/01/git-rebase-for-the-terrified/)
136+
by Aaron Brethorst on Brethorsting Blog.
137+
+ [I made my own git](https://tonystr.net/blog/git_immitation)
138+
by Tony Strømsnæs on his blog.
139+
As it was created with the goal of improving the author understanding of Git,
140+
it is intentionally made not compatibile with Git:
141+
it uses SHA-256 instead of (current) SHA-1, and zstd instead of zlib.
142+
The example code is written in Rust.
143+
+ [Build your own `Git`](https://github.com/codecrafters-io/build-your-own-x#build-your-own-git)
144+
section of [build-your-own-x](https://github.com/codecrafters-io/build-your-own-x)
145+
lists a few articles about reimplementing parts of Git functionality.
146+
Mentioned in [Git Rev News Edition #40](https://git.github.io/rev_news/2018/06/20/edition-40/).
147+
+ [Write yourself a Git!](https://wyag.thb.lt/)
148+
by Thibault Polge is an attempt at explaining the Git version control system
149+
from the bottom up by reimplementing it in Python.
150+
Mentioned in [Git Rev News Edition #49](https://git.github.io/rev_news/2019/03/20/edition-49/).
151+
+ [git-pkgs: explore your dependency history](https://nesbitt.io/2026/01/01/git-pkgs-explore-your-dependency-history.html)
152+
by Andrew Nesbitt on his blog.
153+
+ [Git's HTTP server side design does not scale](https://xeiaso.net/notes/2025/distributed-git-ddos/):
154+
a small rant about CGI. Written by Xe Iaso on their blog.
155+
+ [Tracking kernel development with korgalore](https://people.kernel.org/monsieuricon/tracking-kernel-development-with-korgalore)
156+
by Konstantin Ryabitsev on his blog.
157+
TLDR: use [korgalore](https://korgalore.docs.kernel.org/)
158+
to bypass mailing list delivery problems.
159+
(See also [comments on LWN\.net](https://lwn.net/Articles/1055219/#Comments)).
160+
+ [My first 20,000 curl commits](https://daniel.haxx.se/blog/2026/01/17/my-first-20000-curl-commits/)
161+
by Daniel Stenberg on his blog.
162+
+ [GitOps with ArgoCD feels like the right abstraction](https://nick.scialli.me/blog/gitops/)
163+
by Nick Scialli on his blog.
164+
+ [Bob and Alice: a git patch love story](https://cybrkyd.com/post/a-git-patch-love-story/)
165+
by cybrkyd (Just another Cyber Kid).
166+
+ [Allowlist for .gitignore](https://blog.izissise.net/posts/gitignoreallowlist/)
167+
by Hugues Morisset (izissise) on his blog.
168+
Describes a dedicated script to generate the allow-list based `.gitignore` file effectively
169+
to used with a monorepo.
170+
+ [On git show](https://tonystr.net/blog/git)
171+
by Tony Strømsnæs on his blog,
172+
about the use of `git show <revision>:<path>`.
173+
+ [How to sync files between two local machines using Git](https://www.howtogeek.com/i-turned-git-into-a-private-github-free-sync-system-between-my-own-machines-and-it-completely-changed-how-i-work/)
174+
by Bobby Jack on How-To Git.
175+
+ [Manage Diagrams in AsciiDoc (with PlantUML) on GitHub](https://lornajane.net/posts/2026/manage-diagrams-in-asciidoc-on-github)
176+
(using a build script) by Lorna Jane Mitchell on LornaJane Blog.
177+
+ See also [Include diagrams in your Markdown files with Mermaid](https://github.blog/developer-skills/github/include-diagrams-markdown-files-mermaid/)
178+
(2022) by Martin Woodward & Adam Biagianti on GitHub Blog,
179+
mentioned in [Git Rev News Edition #84](https://git.github.io/rev_news/2022/02/28/edition-84/).
180+
+ [Maintaining shadow branches for GitHub PRs](https://maskray.me/blog/2026-01-22-maintaining-shadow-branches-for-github-prs)
181+
by Fangrui Song (MaskRay).
182+
The goal is to be able to see clean diffs between base and feature branch,
183+
even though the underlying commits were rewritten,
184+
and the base moved ahead.
185+
+ [Post-Agentic Code Forges](https://sluongng.substack.com/p/post-agentic-code-forges),
186+
by Son Luong Ngoc (sluongng) on Son’s Substack.
187+
+ See also [Getting AI to Work in Complex Codebases](https://github.com/humanlayer/advanced-context-engineering-for-coding-agents/blob/main/ace-fca.md).
188+
+ [Abandon Git LFS because AI Agents](https://justin.poehnelt.com/posts/abandon-git-lfs-because-agents/)
189+
by Justin Poehnelt (jpoehnelt) on his blog
190+
(includes description on how to use `git filter-repo` to migrate from Git LFS
191+
to standard Git).
192+
+ [How I use Jujutsu](https://abhinavsarkar.net/posts/jj-usage/)
193+
by Abhinav Sarkar on their blog.
194+
+ [Jujutsu (`jj`)](https://jj-vcs.github.io/jj/) is a Git-compatible version control system,
195+
written in Rust, which was first mentioned in
196+
[Git Rev News Edition #85](https://git.github.io/rev_news/2022/03/31/edition-85/).
197+
+ [How GitHub monopoly is destroying the open source ecosystem](https://ploum.net/2026-01-05-unteaching_github.html)
198+
by Lionel Dricot (Ploum).
199+
+ [Moving from GitHub pages to Codeberg pages](https://kotthoff.dev/posts/2026/github-to-codeberg-pages/)
200+
by Florian Kotthoff on his Hugo & PaperMod powered blog.
201+
+ [Showcasing my Git repositories on the web](https://cybrkyd.com/post/showcasing-my-git-repositories-on-the-web/)
202+
(by creating a static site with GitGen, where everything is generated ahead of time)
203+
by cybrkyd.
204+
+ Compare [Gitmal](https://github.com/antonmedv/gitmal), a static page generator for Git repositories,
205+
mentioned in [previous edition](https://git.github.io/rev_news/2025/12/31/edition-130/).
206+
+ [This tool (pgit) turns any Git repo into a private, offline “GitHub” website](https://www.howtogeek.com/this-easy-tool-gives-me-the-best-of-github-on-my-local-machine/)
207+
by Bobby Jack on How-To Geek.
208+
+ [Git Brag: Highlight and Share Your Open Source Contributions](https://blog.tedivm.com/open-source/2026/01/git-brag-highlight-and-share-your-open-source-contributions/)
209+
by Robert Hafner on his tedious ramblings blog.
210+
+ [Your GitHub Contribution Graph Means Absolutely Nothing - And Here’s Why](https://dev.to/sylwia-lask/your-github-contribution-graph-means-absolutely-nothing-and-heres-why-2kjc)
211+
by Sylwia Laskowska on DEV\.to.
212+
+ [Git forge opinions: GitHub, GitLab, Gitea, Sourcehut](https://cadence.moe/blog/2022-07-03-git-forge-opinions-github-gitlab-gitea-sourcehut)
213+
(2022) by Cadence on cadence’s website.
214+
120215
<!---
121216
__Easy watching__
122217
-->
123218

124219
__Git tools and sites__
125220

221+
+ [forgeperf.org](https://forgeperf.org/) - Software Forge Performance Index.
222+
Reports generated with [Lighthouse](https://github.com/GoogleChrome/lighthouse),
223+
originally updated weekly, last update February 7, 2024.
224+
Created and maintained by [SourceHut](https://sourcehut.org/) forge.
225+
+ [Mirror to Codeberg](https://codeberg.org/Recommendations/Mirror_to_Codeberg):
226+
a central place of information about mirroring repos to Codeberg.
227+
Includes some thoughts about why one would want to switch from GitHub or GitLab,
228+
or at least have a second place for your code: a mirror that's contributable,
229+
with links to other articles.
230+
+ [git-natural-api](https://jsr.io/@fiatjaf/git-natural-api)
231+
is a lightweight git HTTP client for fetching repository data without cloning.
232+
It use /git-upload-pack custom calls to get access to file trees,
233+
commit history or individual objects.
234+
Written in TypeScript, and provides JavaScript / TypeScript API.
235+
Can be used in browser, using Bun, Deno, or Node\.js.
236+
No license provided.
237+
+ [Grasp](https://ngit.dev/grasp/)
238+
(Git Relays Authorized via Signed-Nostr Proofs)
239+
is distributed, protocol-first approach to hosting Git repos.
240+
You pre-authorize pushes via signed
241+
[Nostr](https://github.com/nostr-protocol/nostr/) events,
242+
then any compliant server can host your repo.
243+
[ngit-relay](https://ngit.dev/relay) is a Grasp reference implementation
244+
that uses a Dockerized stack: nginx, git-http-backend and a Khatru relay.
245+
+ Compare [Tangled](https://tangled.org/),
246+
a social-enabled Git collaboration platform built on top of the AT Protocol
247+
(which is behind [BlueSky](https://bsky.app/) microblogging federated social media service).
248+
First mentioned in [Git Rev News Edition #125](https://git.github.io/rev_news/2025/07/31/edition-125/),
249+
then in [#126](),
250+
and [#128]().
251+
+ Compare [Radicle](https://radicle.xyz/),
252+
an open source, peer-to-peer code collaboration stack built on Git,
253+
first mentioned in [Git Rev News Edition #49](),
254+
and many times since; most recently in [#126]().
255+
+ There is also [gitstr (`git str`)](https://github.com/fiatjaf/gitstr),
256+
a tool to send and receive Git patches over Nostr,
257+
using [NIP-34](https://github.com/nostr-protocol/nips/pull/997)
258+
(mentioned in [Git Rev News Edition #109](https://git.github.io/rev_news/2024/03/31/edition-109/)),
259+
+ Compare [`git-ssb`](https://scuttlebot.io/apis/community/git-ssb.html)
260+
(see the [git-ssb-intro](https://github.com/hackergrrl/git-ssb-intro) guide),
261+
a decentralized Git repo hosting and issue tracking on [Secure-ScuttleButt (SSB)](https://www.scuttlebutt.nz/)
262+
(mentioned in [Git Rev News Edition #26](https://git.github.io/rev_news/2017/04/19/edition-26/)
263+
and [#40](https://git.github.io/rev_news/2018/06/20/edition-40/)).
264+
+ Contrast with [ForgeFed](https://forgefed.org/) (formerly GitPub),
265+
a federation protocol for software forges (an [ActivityPub](https://www.w3.org/TR/activitypub/) extension),
266+
mentioned in [Git Rev News Edition #69](https://git.github.io/rev_news/2020/11/27/edition-69/).
267+
+ The [Game of Trees Hub](https://gothub.org/) is a transparently funded
268+
Git repository hosting service. Its infrastructure is based on OpenBSD
269+
and [Game of Trees](https://gameoftrees.org/).
270+
+ [Game of Trees (Got)](https://gameoftrees.org/index.html)
271+
is a version control system developed by and for OpenBSD developers,
272+
which wants to remain on-disk compatible with bare Git repositories.
273+
Mentioned in [Git Rev News Edition #54](https://git.github.io/rev_news/2019/08/21/edition-54/).
274+
+ [keifu](https://github.com/trasta298/keifu) (系譜, /keːɸɯ/) is a terminal UI tool
275+
that visualizes Git commit graphs. It shows a colored commit graph, commit details,
276+
and a summary of changed files, and lets you perform basic branch operations.
277+
Written in Rust, under MIT license.
278+
+ [git-com](https://git-com.masukomi.org/) is a TUI tool
279+
for creating structured commit messages that’s easy to configure for each project.
280+
[Written](https://github.com/masukomi/git-com) in Go, under MIT license.
281+
+ [Git Brag](https://gitbrag.tedivm.com/) is an open source web application (or CLI)
282+
that creates a simple report of the contributions you've made to open source projects
283+
on GitHub (it requires logging with GitHub to create the report).
284+
[Written](https://github.com/tedivm/gitbrag) in Python, under MIT license.
285+
+ [GitGen](https://git.cybrkyd.com/GitGen/index.html)
286+
is a lightweight static website generator for local Git repositories written in Python.
287+
It scans a directory of Git repositories and produces a navigable,
288+
self-contained HTML website similar in spirit to cgit or GitWeb,
289+
but without any server-side dependencies.
290+
The generated site includes a repository index, per-repository README rendering,
291+
file listings, commit history, and detailed commit views with diffs.
292+
Under GPLv3 license.
293+
+ Compare [Gitmal](https://github.com/antonmedv/gitmal),
294+
a static page generator for Git repositories,
295+
written in Go, under MIT license.
296+
It was mentioned in [Git Rev News Edition #130](https://git.github.io/rev_news/2025/12/31/edition-130/).
297+
+ [pgit](https://github.com/picosh/pgit) is static site generator for git repos.
298+
Demo at <https://git.erock.io/>.
299+
Written in Go, under MIT license.
300+
+ [GAH!](https://git.sr.ht/~absolutely-vivid/gah)
301+
is your friendly neighborhood <b>g</b>ood <b>h</b>elpful <b>a</b>rchiver.
302+
It archives GitHub issues and pull requests,
303+
and can create a static site from archives.
304+
Written in Python, under BSD license (Simplified BSD License).
305+
+ [tokendiff](https://github.com/dacharyc/tokendiff) is a Go library and CLI
306+
for token-level diffing with delimiter support.
307+
Tokendiff uses a histogram diff algorithm
308+
that groups semantically related changes together,
309+
producing more readable output than traditional Myers-based approaches
310+
for complex structural changes.
311+
It builds on [diffx](https://github.com/dacharyc/diffx),
312+
a Go implementation of Myers diff.
313+
Under MIT license.
314+
+ [CleanDiff](https://cleandiffapp.com/) is a graphical diffing tool
315+
that shows you what’s changed on a word level, instead of a line level.
316+
It uses the tokendiff library to find semantically relevant changes,
317+
and wraps them in a nice UI and easy git integration.
318+
[Written](https://github.com/masukomi/cleandiff) in Go and JavaScript,
319+
under MIT license.
320+
+ [patch-hub](https://github.com/kworkflow/patch-hub)
321+
is a terminal-based user interface (TUI) designed to
322+
simplify working with software patches sent through mailing lists
323+
in Linux-related development. It provides an efficient way
324+
to navigate and interact with patches archived on [lore.kernel.org](https://lore.kernel.org/),
325+
specifically for the Linux kernel and adjacent projects.
326+
Written in Rust, under GPL-2.0 license.
327+
+ [Korgalore](https://korgalore.docs.kernel.org/en/latest/index.html)
328+
is a tool for feeding [public-inbox](https://public-inbox.org/README.html) git repositories,
329+
like [lore.kernel.org](https://lore.kernel.org/), directly into mail targets
330+
(Gmail, JMAP, IMAP, or local maildir) as an alternative to subscribing.
331+
It provides a workaround for Gmail’s notorious hostility
332+
to high-volume technical mailing list traffic.
333+
Written in Python, under GPL-2.0 license.
334+
+ [git-pkgs](https://github.com/git-pkgs/git-pkgs) provides a git subcommand
335+
for tracking package dependencies across git history.
336+
It analyzes your repository to show when dependencies were added, modified, or removed,
337+
who made those changes, and why.
338+
Builds on [bibliothecary](https://github.com/ecosyste-ms/bibliothecary),
339+
the manifest parsing library behind [ecosyste.ms](https://ecosyste.ms/).
340+
Written in Go (originally [in Ruby](https://github.com/git-pkgs/git-pkgs-ruby)),
341+
under MIT license.
342+
126343

127344
## Releases
128345

0 commit comments

Comments
 (0)