Sitemap

Member-only story

Rust Is Building Its Own Git Infrastructure. Meet Josh.

The Rust Project isn’t just a compiler. It’s a constellation of tools, Cargo, Clippy, rustfmt, Rust Analyzer, Miri, and more, each living in its own repository, each needing to stay in sync with the core rust-lang/rust repo. That’s a problem most large open-source projects quietly struggle with. Rust’s answer is a tool called Josh, and understanding why it exists tells you a lot about what happens when a project outgrows ordinary Git workflows.

5 min readOct 25, 2026

--

Press enter or click to view image in full size

The Problem: One Project, Many Repositories

rust-lang/rust is, conceptually, already a monorepo. It holds the compiler, the standard library, rustdoc, and a long list of other pieces. But several closely related tools, Miri, Rust Analyzer, compiler-builtins, and stdarch among them, live in their own separate repositories outside it.

That split creates real friction. According to the Rust blog, making an internal breaking change in rust-lang/rust that a subproject depends on isn’t a single step. It typically means merging the breaking…

--

--

Rothy Yorn
Rothy Yorn

Written by Rothy Yorn

Software engineer passionate about building, learning, and sharing insights about development, QA, automation, and technology.