Shopify CEO Tobias Lütke has built and open-sourced a Git server over a weekend after becoming frustrated with the company’s internal Git infrastructure.
The resulting project, called ‘walgit’, is a single Rust binary designed to run in front of an S3-compatible object store without requiring a separate database.
Lütke said on X that Cursor’s recent “Git at any scale” post prompted the project. “It came right when I was frustrated with Shopify’s internal git system,” he wrote, describing the implementation as an exercise that he completed over the weekend.
Cursor’s system, called Continuity, uses a write-ahead log (WAL) stored in S3-compatible object storage as the source of truth for Git repositories. Local repositories remain on fast NVMe drives for Git operations, but are treated as rebuildable caches rather than authoritative copies.
Continuity removes the need to maintain a fixed location for each repository or a relational database to track those locations. Any server can reconstruct a repository from the WAL when needed.
Lütke’s walgit follows the same basic architecture. Its repository describes it as a Git server with “no database, no leader and no local state that matters”, with the object-store bucket serving as the repository and local machines acting as caches.
A deployment can point the binary to an S3 or Google Cloud Storage bucket, and multiple server instances can use the same underlying store.
The system uses a WAL and compare-and-swap (CAS) operations to publish repository changes. A push is uploaded to object storage and becomes visible only after the repository manifest updates successfully. This lets multiple instances operate against the same repository without a leader or a conventional coordination database.
Walgit also addresses the storage and download challenges of very large repositories. It supports Git’s bundle-uri mechanism, allowing large repositories to be distributed as chains of static bundles stored in the object store or delivered through a content delivery network (CDN).
Lütke specifically said this makes large repositories such as Shopify’s monorepo “very fast to download”.
The project also includes smart HTTP support, Git LFS, a web interface, JSON API, webhooks, repository-level push policies and OpenID Connect authentication.
It can keep commits and trees locally while reading large blob data remotely through HTTP range requests, allowing repositories larger than the machine hosting the Git server.
The repository is MIT-licensed and is currently almost entirely written in Rust.


Your reaction
Discussion
What's your take on this story?
No comments yet — be the first to share your view.