20 years of Git. Still weird, still wonderful

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

InfluxDB – Built for High-Performance Time Series Workloads
InfluxDB 3 OSS is now GA. Transform, enrich, and act on time series data directly in the database. Automate critical tasks and eliminate the need to move data externally. Download now.
www.influxdata.com
featured
Stream - Scalable APIs for Chat, Feeds, Moderation, & Video.
Stream helps developers build engaging apps that scale to millions with performant and flexible Chat, Feeds, Moderation, and Video APIs and SDKs powered by a global edge network and enterprise-grade infrastructure.
getstream.io
featured
  1. jj

    A Git-compatible VCS that is both simple and powerful

    I don't know if it's the only or original reason, but one nice consequence of the reverse hex choice is that it means change IDs and commit IDs have completely different alphabets ('0-9a-f' versus 'z-k'), so you can never have an ambiguous overlap between the two.

    Jujutsu mostly doesn't care about the real "format" of a ChangeId, though. It's "really" just any arbitrary Vec and the backend itself has to define in some way and describe a little bit; (the example backend has a 64-byte change ID, for example.[1]) To the extent the reverse hex format matters it's mostly used in the template language for rendering things to the user. But you could also extend that with other render methods too.

    [1] https://github.com/jj-vcs/jj/blob/5dc9da3c2b8f502b4f93ab336b...

  2. InfluxDB

    InfluxDB – Built for High-Performance Time Series Workloads. InfluxDB 3 OSS is now GA. Transform, enrich, and act on time series data directly in the database. Automate critical tasks and eliminate the need to move data externally. Download now.

    InfluxDB logo
  3. git-internals-pdf

    Discontinued PDF on Git Internals

  4. ssh-signing

    Oh yeah, SSH signing is incredible. I've also migrated to it and didn't look back.

    A couple of differences:

    - it's possible to specify signing keys in a file inside the repository, and configure git to verify on merge (https://github.com/wiktor-k/ssh-signing/). I'm using that for my dot config repo to make sure I'm pulling only stuff I committed on my machines.

    - SSH has TPM key support via PKCS11 or external agents, this makes it possible to easily roll out hardware backed keys

    - SSH signatures have context separation, that is it's not possible to take your SSH commit signature and repurpose it (unlike OpenPGP)

    - due to SSH keys being small the policy file is also small and readable, compare https://github.com/openssh/openssh-portable/blob/master/.git... with equivalent OpenPGP https://gitlab.com/sequoia-pgp/sequoia/-/blob/main/openpgp-p...

  5. openssh-portable

    Portable OpenSSH

    Oh yeah, SSH signing is incredible. I've also migrated to it and didn't look back.

    A couple of differences:

    - it's possible to specify signing keys in a file inside the repository, and configure git to verify on merge (https://github.com/wiktor-k/ssh-signing/). I'm using that for my dot config repo to make sure I'm pulling only stuff I committed on my machines.

    - SSH has TPM key support via PKCS11 or external agents, this makes it possible to easily roll out hardware backed keys

    - SSH signatures have context separation, that is it's not possible to take your SSH commit signature and repurpose it (unlike OpenPGP)

    - due to SSH keys being small the policy file is also small and readable, compare https://github.com/openssh/openssh-portable/blob/master/.git... with equivalent OpenPGP https://gitlab.com/sequoia-pgp/sequoia/-/blob/main/openpgp-p...

  6. sequoia

    Oh yeah, SSH signing is incredible. I've also migrated to it and didn't look back.

    A couple of differences:

    - it's possible to specify signing keys in a file inside the repository, and configure git to verify on merge (https://github.com/wiktor-k/ssh-signing/). I'm using that for my dot config repo to make sure I'm pulling only stuff I committed on my machines.

    - SSH has TPM key support via PKCS11 or external agents, this makes it possible to easily roll out hardware backed keys

    - SSH signatures have context separation, that is it's not possible to take your SSH commit signature and repurpose it (unlike OpenPGP)

    - due to SSH keys being small the policy file is also small and readable, compare https://github.com/openssh/openssh-portable/blob/master/.git... with equivalent OpenPGP https://gitlab.com/sequoia-pgp/sequoia/-/blob/main/openpgp-p...

  7. nix

    Nix, the purely functional package manager

    NixOS may end up being "the last OS I ever use" (especially now that gaming is viable on it):

    https://nixos.org/

    Check it out. The whitepaper's a fairly digestible read, too, and may get you excited about the whole concept (which is VERY different from how things are normally done, but ends up giving you guarantees)

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

  • 7 Ways to Use the SLSA Framework to Secure the SDLC

    3 projects | dev.to | 12 Nov 2024
  • Ask HN: How can we open-source a 7 year old SaaS codebase and build a community?

    2 projects | news.ycombinator.com | 30 May 2024
  • Immutable Distros: Something to be hyped about?

    3 projects | /r/linuxquestions | 2 May 2023
  • Linux go brrr...

    2 projects | /r/ProgrammerHumor | 16 Jun 2022
  • Testing portage (gentoo package manager) on Ubuntu.

    2 projects | /r/linux | 13 Mar 2021

Did you know that Rust is
the 5th most popular programming language
based on number of references?