THE VIDEO SHELF · monorepos
Why Google Stores Billions of Lines of Code in a Single Repository
Rachel Potvin describes the scale of Google's codebase and its custom monolithic source repository. She explains the reasons for the monorepo model, the tooling that makes it workable, and its tradeoffs.
Why HN readers recommended it
The go-to reference in monorepo and trunk-based development discussions, recommended as a firsthand account of how Google manages source control.
This is a summary from the source dataset, not an endorsement by Hacker News or the video creator.
Video & recommendation details
- Creator / channel
- @Scale
- Topic
- monorepos
- Format
- talk
- Level
- intermediate
- HN recommenders in dataset
- 2
- HN mentions in dataset
- 6
- Recommendation years in dataset
- 2016–2022
These counts and years describe the included Hacker News records; they are not YouTube views or the video’s publication date.
From the original HN conversations
Excerpts from the recorded comments. Follow each source for the full comment and surrounding discussion.
It's common practice for folks building Go binaries (but not libraries) to check in the code for their dependencies. So whenever you build Docker, you get the same thing unless Docker made a change (either by changing Docker itself or explicitly checking in an upgrade …
twotwotwo on Hacker News · 2016-07
In Go Packaging Proposal ProcessGoogle doesn't use perforce anymore. They have a custom in-house SCM that has various interfaces wrapped around it. I'd recommend this video that describes it. [VIDEO]
kyrra on Hacker News · 2017-01
In Trunk-Based DevelopmentGoogler opinions are my own. I also highly recommend this ACM article talking about our source control from 2016. [LINK] There's also a YouTube video which is linked from the wired article that is good. [VIDEO]
kyrra on Hacker News · 2022-05
In Google is 2B lines of code and it's all in one place (2015)
Summaries, classifications and recommendation records are from the HackerTube source dataset. Read about this library and its limitations.