Scaling Git’s Garbage Collection
- Taylor Blau tl;dr: The process for permanently removing unreachable objects from a repository’s history has a history of causing problems within GitHub, especially in busy repositories or ones with lots of objects. In this post, we’ll talk about what those problems were, why we had them, the tools we built to address them, and some interesting ways we’ve built on top of them.featured in #354
Git’s Database Internals I: Packed Object Store
- Derrick Stolee tl;dr: Some basic concepts that Git shares with application DBs: (1) Data is persisted to disk. (2) Queries allow users to request information based on that data. (3) The data storage is optimized for these queries. (4) The query algorithms are optimized to take advantage of these structures. (5) Distributed nodes need to synchronize and agree on some common state.featured in #348
featured in #339
featured in #337
A 16 Year History Of The Git Init Command
- Jacob Stopak tl;dr: "How the git init command originated and how it has changed each year for the past 16 years," along with "snapshots from Git's code every year from 2005 to 2021."featured in #263
Teach Yourself Git Without Learning a Single Git Command
- Ivan Toshkov tl;dr: "In this tutorial I’ll try to describe how git works without using git itself. Instead, we’ll create a simple, git-like system using just zip, diff, patch and a few simple filesystem commands. The idea is to build a good mental model of how git works conceptually.featured in #253
featured in #250
featured in #241
featured in #215
A Survey Of Git Best Practices
- David Golden tl;dr: David researched articles around Git best practices for a work presentation and collated the most frequently practices, in this post.featured in #204