Unlocking Bazel's Potential with Monorepo: A Key to Efficient Software Development
summary
Claims an open source system named Mega uses a distributed database to store Git objects and provides Git protocol compatibility, enabling a true monorepo backend for Bazel. Prototype decodes blobs, trees and commits into DB, imports on the order of 20–22 million files from thousands of repos, and triggers Bazel by cloning into a temp workspace and invoking remote execution. Current limits: single main branch, one commit per pack, no direct git tags; prototype demo runs but needs UI, FUSE mount and robustness work.
AI-written summary · about
chapters (9)
- 0:00Bazel and monorepos intro
- 3:20Monorepo vs polyrepo trade-offs
- 7:18Git internals and DB design
- 12:02Demo setup and DB init
- 15:57Pushing code to monorepo DB
- 18:24Cloning subdirectories
- 21:05Triggering Bazel builds
- 25:57Prototype completion and plans
- 26:50Q&A on cloning
related talks
34mBuilding Real-time Systems with Bazel
30mBuilding a Distributed Build System at Google Scale
26mCan we do better than git s Merkle DAG?
20mBuilding Apache Heron
50mOur Adventure building a massively scalable mixed C++ and Rust remote compiler cloud
41mProgramming Distributed Systems
22mTear down this wall – rethink distributed systems
22mMonarch: A Fuzzing Framework for Distributed File Systems
