index.md (3093B)
1 --- 2 title: "Giving up GitHub" 3 date: 2022-06-26T19:54:49-04:00 4 draft: false 5 description: "How and why I'm self-hosting my code repositories." 6 categories: 7 - Programming 8 - Personal 9 tags: 10 - Git 11 --- 12 13 Today I deleted my account on GitHub, and I've moved some of my public 14 repositories to <https://git.eamoncaddigan.net/>. If you're looking for 15 something that's not hosted there, please reach out to me and I'll send you 16 whatever you need. 17 18 My new self-hosted repository is built with 19 [stagit](https://codemadness.org/stagit.html); it's ideal for hosting 20 single-owner repositories on static websites, which perfectly describes my 21 use-case. I found this tool through a 22 [Gemini](http://gemini.circumlunar.space/) post about 23 [git-request-pull](https://alex.flounder.online/gemlog/2022-05-11.gmi), one 24 of the alternatives to using GitHub to coordinate collaborative software 25 projects. 26 27 I've been meaning to migrate from the service since 2019, when [GitHub 28 leadership ignored calls from the community and their employees to not renew 29 its contract with Immigration and Customs Enforcement 30 (ICE)](https://web.archive.org/web/20210322043039/https://www.washingtonpost.com/context/letter-from-github-employees-to-ceo-about-the-company-s-ice-contract/fb280de9-2bc3-40d5-b1a5-e3b954bf0d25/). 31 More recently, the company released a new product, [which violates the 32 spirit—and potentially the letter—of the licenses of many of open source 33 projects](https://fossa.com/blog/analyzing-legal-implications-github-copilot/) 34 that have made their business possible. This was apparently the nudge I 35 needed. 36 37 GitHub has become synonymous with Git, but anyone can use the powerful ([but 38 difficult to master]({{< ref "posts/design-everyday-programs/index.md" >}})) 39 revision control system (RCS) without using GitHub at all. For the solo 40 coder (or data analyst), initializing a local repository will provide most 41 of the benefits of using an RCS, such as the ability to roll-back changes or 42 explore different ideas using branches. [Gitea](https://gitea.io/en-us/) is 43 a self-hosted GitHub alternative that operates in a similar vein, but 44 philosophically, I'm drawn to approaches that leverage the distributed 45 nature of the tool, such as 46 [`git-request-pull`](https://git-scm.com/docs/git-request-pull), 47 [`git-format-patch`](https://git-scm.com/docs/git-format-patch), and 48 [`git-send-email`](https://git-scm.com/docs/git-send-email). 49 50 I've become much more confident with Git in the years since I [last wrote 51 about it]({{< ref "posts/design-everyday-programs/index.md" >}}), but I 52 stand by my critique that effective Git use requires the user to understand 53 too many implementation details (although, if you want to get started down 54 that path, [here's a great 55 post](https://nfarina.com/post/9868516270/git-is-simpler) to get you 56 started). GitHub attempted to lower the barrier to entry, and they deserve 57 praise for that. However, I've come to feel that the trade-offs they made to 58 "simplify" Git were the wrong ones, and the company has shown poor judgment 59 in too many other areas for me to continue endorsing their service.