This time it'll be different...

Recent GitHub problems:

Gentoo and Ghostly are migrating away from GitHub; the former because of the aggressive Copilot marketing, and the latter because of the repeated outages.

Microsoft has apologized and vowed to do better, but I think GitHub will continue to deteriorate.

Why?

So what should we do?

I don’t know exactly, but here are some suggestions:

Developers : Consider migrating your open source and personal projects to Codeberg, another development platform, or a self-hosted Forgejo instance. After migrating, either a) archive the old GitHub repositories or b) maintain the old GitHub repositories as read-only mirrors of the new repositories. You can use the git-remote command for a code-only repository migration or use Codeberg’s repository migration tool if you want to migrate a repository that has issues, releases, or a wiki.

: Consider migrating your open source and personal projects to Codeberg, another development platform, or a self-hosted Forgejo instance. After migrating, either a) archive the old GitHub repositories or b) maintain the old GitHub repositories as read-only mirrors of the new repositories. You can use the git-remote command for a code-only repository migration or use Codeberg’s repository migration tool if you want to migrate a repository that has issues, releases, or a wiki. Package Registries (crates.io, pypi.org, etc): Make sure that your registry supports packages hosted on other platforms and that it allows developers to authenticate using a non-GitHub identity. Most registries do the former, but many don’t do the latter (I’m looking at you, crates.io).

(crates.io, pypi.org, etc): Make sure that your registry supports packages hosted on other platforms and that it allows developers to authenticate using a non-GitHub identity. Most registries do the former, but many don’t do the latter (I’m looking at you, crates.io). Packaging Tools (cargo, pip, etc): Make sure there is an easy and well-documented way to publish packages for projects hosted on non-GitHub platforms.

(cargo, pip, etc): Make sure there is an easy and well-documented way to publish packages for projects hosted on non-GitHub platforms. CI/CD Tools: Provide documentation on integrating your tool on a non-GitHub platform and/or make your tool available as a container.

I suspect GitHub’s problems will compound as the “AI” bubble begins to collapse. Unfortunately I don’t know if that means “next month” or “next year” .

Regardless, now seems like a good time to proceed towards the exit. I’m going to start migrating my personal projects to Codeberg.