Skip to content

GitHub Down? What Still Works and How to Keep Shipping Code

A close-up of a laptop displaying code in a dimly lit room with a coffee mug nearby.
Photo: Daniil Komov / Pexels

When GitHub is down, your local Git repository still works: you can commit, branch, diff and read history, then push when GitHub recovers. Check githubstatus.com first and read the component that matches your problem, such as Git Operations for clones and pushes or Actions for CI. If only one component is degraded, the rest of GitHub may work normally.

How do I read githubstatus.com?

GitHub’s status page splits the service into components, each with its own status. The labels are Operational, Degraded Performance, Partial Outage, Major Outage and Maintenance. The descriptions below are GitHub’s own, from the status page.

Component What GitHub says it covers What you notice when it fails
Git Operations Performance of git clones, pulls, pushes, and associated operations git push, pull or clone fails or hangs
API Requests Requests for GitHub APIs The gh command line tool, bots and integrations return errors
Webhooks Real time HTTP callbacks of user-generated and system events Deploys, chat notifications and other hooks do not fire
Issues and Pull Requests Requests for Issues and Pull Requests on GitHub.com Pages load slowly, reviews or merges fail
Actions Workflows, Compute and Orchestration for GitHub Actions Jobs stay queued, start late or fail
Packages API requests and webhook delivery for GitHub Packages Pulls from GitHub’s package and container registry fail
Pages Frontend application and API servers for Pages builds Pages sites do not build or deploy
Codespaces Orchestration and Compute for GitHub Codespaces Codespaces do not start
Copilot and Copilot AI Model Providers Listed without a description Suggestions or chat stop working; see live GitHub Copilot status

Companies on GitHub Enterprise Cloud with data residency have separate regional status pages, listed on githubstatus.com for Australia, the EU, Japan and the US. For what the labels mean in general, see how to read a status page.

Is GitHub down, or is it my connection?

  1. Check the status page and our live GitHub status.
  2. Open github.com on another network, such as phone data. If it loads there, the problem is your network, VPN or proxy.
  3. Test Git access from the terminal. git ls-remote origin lists the branches on the remote without changing anything. An error here, while the website works, points at Git Operations or your credentials.
  4. Test SSH. GitHub’s docs use ssh -T [email protected]. A reply that greets you by username means your key works and GitHub is answering. GitHub has a separate help article for Error: Permission denied (publickey), which is a key problem, not an outage.
  5. Look for DNS errors. A message that the host cannot be resolved points to DNS. See DNS errors explained.

What still works when GitHub is down?

More than people expect. GitHub’s own guide to Git says that in a distributed version control system, every developer has a full copy of the project and its history. Without GitHub you can still:

  • commit, branch, merge, rebase and stash;
  • read the log, compare versions and check out older commits;
  • run your tests and builds locally;
  • install packages that are already in your local cache.

What stops depends on the component: pushes and pulls, pull request reviews, Actions runs, Pages deploys, Codespaces, Copilot and anything that downloads from GitHub during a build.

How do I keep working on code during a GitHub outage?

  1. Keep committing locally. Small commits are easier to push and review later.
  2. Share work without GitHub if you must. git bundle create packs commits into one file that a teammate can fetch from. Send it through a channel your company approves.
  3. Use a mirror only if your team has one. A second remote added with git remote add works if it already exists on an approved internal server. Do not push company code to a personal account.
  4. Fetch before you push after recovery. Run git fetch, check whether a push from the outage window landed, then push or rebase.

What do I do about GitHub Actions and CI?

Wait for Actions to show Operational before you retry, because new runs may also queue or fail. Repeated retries during an incident can add load and do not speed up the fix.

  • Self-hosted runners do not bypass an Actions outage. GitHub’s runner reference says self-hosted runners connect to GitHub to receive job assignments.
  • Re-run afterwards. In the workflow run, open the Re-run jobs menu and choose Re-run failed jobs or Re-run all jobs. From the terminal, gh run rerun RUN_ID --failed does the same. GitHub’s re-run guide allows this up to 30 days after the first run and up to 50 re-runs.
  • Start manual workflows later. Workflows with the workflow_dispatch trigger get a Run workflow button once the file is on the default branch.
  • Test locally if a fix cannot wait, and follow your team’s written release process for any deploy outside CI.

What about npm packages and files downloaded from GitHub?

The npm registry, which GitHub owns, has its own status page at status.npmjs.org. Its components are the www.npmjs.com website, Package installation, Package publishing, Package search, Security Audit and Replication Feed. A GitHub incident does not always touch npm, so check live npm status separately.

  • Use the npm cache. npm’s config docs say --prefer-offline bypasses staleness checks for cached data and requests only missing data from the server. --offline makes no network requests during install. Both work best with a lockfile and a cache your CI already keeps.
  • Watch for Git dependencies. Packages listed in package.json by a GitHub URL instead of a registry version need Git Operations to install.
  • Check build scripts that download release files or raw files from GitHub, and CDN links that serve files from GitHub repositories. These can fail during a GitHub incident. Keeping copies of critical files in your own storage avoids that.
  • Packages hosted on GitHub, including container images, depend on the Packages component.

To hear about the next incident early, subscribe on the status page. Our guide to getting outage alerts explains the options, from email to webhooks.

Bottom line

Check githubstatus.com by component, keep committing locally, and wait for Actions to show Operational before re-running jobs. Lean on the npm cache and lockfile, avoid Git URL dependencies for critical builds, and push after a fresh git fetch once GitHub is back.

FAQ

Can I commit while GitHub is down?

Yes. Commits are stored in your local repository. You only need GitHub to push them, pull others’ work or open pull requests.

Will my GitHub Actions jobs run once GitHub recovers?

Queued jobs may still start, but failed ones need a manual re-run. GitHub allows re-runs up to 30 days after the first run.

Is GitHub Copilot on githubstatus.com?

Yes. The page lists Copilot and Copilot AI Model Providers as separate components.

Why does GitHub work for my coworker but not for me?

Partial outages can affect some regions, accounts or features. A local cause such as a VPN, proxy, DNS setting or expired credential is also common, so run the checks above.