GitHub
What it is
It holds a website’s code in a repository, with a full history of every change and who made it. It is the difference between a site your agency has and a site you own.
What it’s good at
Reversibility: every version is kept; a bad change is undone in minutes. Review: a second person reads a change before it ships. Shipping: bucca.dk deploys from a push to its main branch; I send a change up and the live site rebuilds on its own.
What it costs to own
It presumes somebody technical. Access is the asset register nobody maintains: repositories accumulate the agency from two sites ago and the developer who left, each still able to change your site, and keeping that list clean is a yearly job. The repository can sit in your company’s account with the agency invited in, or in the agency’s, and the difference shows the day you part: in theirs, the site is theirs. That is why it belongs in the handover.
When it’s a poor fit
It is a poor fit when the site is edited in a browser on Webflow or Shopify and there is no code to keep; a repository is then mostly ceremony. It also fits poorly as the company’s file store: marketing is sent into a tool built for code review, and a second archive quietly appears.
What it sits beside
It replaces the agency’s laptop as home of the only copy. It pairs with the host: the repository keeps the code, Cloudflare serves what is built from it. Settings made in a hosting dashboard escape the history; where the words are files, text waits in the code’s queue.
My experience
My own site sits in a repository on my own account, and what I have most often seen cause trouble is sites where the code only lives on the agency’s account.