Git’s database internals I: packed object store

This page summarizes the projects mentioned and recommended in the original post on news.ycombinator.com

Our great sponsors
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • WorkOS - The modern identity platform for B2B SaaS
  • SaaSHub - Software Alternatives and Reviews
  • Git

    Git Source Code Mirror - This is a publish-only repository but pull requests can be turned into patches to the mailing list via GitGitGadget (https://gitgitgadget.github.io/). Please follow Documentation/SubmittingPatches procedure for any of your improvements.

  • FWIW git has recently reorganised their docs a lot, and moved some things to man pages.

    The pack format docs were one of the documents affected, it now lives at https://github.com/git/git/blob/master/Documentation/gitform....

  • CocoaPods

    The Cocoa Dependency Manager.

  • Ah, thanks. You've reminded me about the 2016 debacle [0] wherein github rate limited the cocoapods repository because their practice of using a shallow clone and later fetches impacted github's performance. I'm going to warc that now, so I don't forget again.

    [0] https://github.com/CocoaPods/CocoaPods/issues/4989#issuecomm...

    [+] https://github.com/orgs/Homebrew/discussions/225

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
  • python-git-info

    A simple project to get information from the git repository of your project

  • I have written a small python library to read info directly from the .git folder (without using the git executable): https://github.com/spapas/python-git-info/

    Decoding the pack files was notoriously difficult, probably there are still cases that I don't handle properly. The packfile is a really complex/messy format and in the top of that it lacks any proper documentation!

    This article explains a lot of the concepts very good but doesn't go into implementation details (where the big snakes are). Another great resource for unpacking packfiles is this post: https://codewords.recurse.com/issues/three/unpacking-git-pac... and of course reading the source code of other git clients.

    Unfortunately it seems that the official packfile format documentation is the git source code :|

  • duffer

    A git-compatible content tracker in Haskell.

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts