www.eamoncaddigan.net

Content and configuration for https://www.eamoncaddigan.net
git clone https://git.eamoncaddigan.net/www.eamoncaddigan.net.git
Log | Files | Refs | Submodules | README

commit 1436af443e50eabaac95b1bf2b2c417b7ab3d1d3
parent 6dc56d3afa536e3ccce4eb3ae768d49db43a6725
Author: Eamon Caddigan <eamon.caddigan@gmail.com>
Date:   Sun, 14 Jan 2024 21:13:41 -0800

Post about distributed Git

Diffstat:
Acontent/posts/git-distributed/index.md | 48++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 48 insertions(+), 0 deletions(-)

diff --git a/content/posts/git-distributed/index.md b/content/posts/git-distributed/index.md @@ -0,0 +1,48 @@ +--- +title: "Git is a distributed version control system" +date: 2024-01-14T21:12:10-08:00 +draft: false +categories: +- Programming +tags: +- Git +--- + +[SourceHut](https://sourcehut.org/), a hacker[^hacker]-oriented code +[forge](https://en.wikipedia.org/wiki/Forge_(software)), recently suffered a +couple days' downtime due to a [sustained DDoS +attack](https://outage.sr.ht/), and parts of it are still coming online. + +I'm impressed by the way Drew and SourceHut are handling the situation, but +it's a good reminder that "Git is a _distributed_ version control system". +Code forges are useful tools---and I'm really grateful for [alternatives to +GitHub]({{< ref "giving-up-github" >}})---but programmers who use Git should +keep themselves familiar with the tooling built right into it for completely +distributed workflows, such as +[git-send-email](https://git-scm.com/docs/git-send-email)[^email] and +[git-request-pull](https://git-scm.com/docs/git-request-pull). Even if only +to stay well-prepared for situations like this one. + +But we can be more proactive by mirroring other people's code; after all, +the writings that survive from the classical world are only around today +because people kept making copies of them. It's naive to think that _any_ +website will last forever, so those of us with our own self-hosted +repositories[^repos] can make our communities more resilient by hosting +clones of software projects that we find useful or culturally important. I +posted [a copy of the core Uxn +distribution](https://git.eamoncaddigan.net/uxn/)[^uxn], not because I think +my little website will necessarily be around longer than SourceHut or +Hundred Rabbits', but because the likelihood of all three becoming +unavailable is slightly smaller than that for just the latter two. + +[^hacker]: In the sense used by, e.g., Levy (1984). + +[^email]: <https://git-send-email.io/> is a great resource, but in an ironic + twist (in the Morissettian sense), the site is currently unreachable as + SourceHut recovers from the DDoS. + +[^repos]: Even if they're simple static sites serving over [the "dumb" + protocol](https://git-scm.com/book/en/v2/Git-Internals-Transfer-Protocols). + +[^uxn]: Which nudged me to return to my [December Adventure]({{< ref + "december-adventure" >}}) project, after taking a couple weeks off.