No, you also have the choice of using separate repositories, and just connecting them with dependency lists. I never understood the obsession with putting hundreds of millions of lines of code¹ in a single repo. Whatever happened to decoupling?
¹ Git can handle dozens of millions, as shown by the Linux kernel
¹ Git can handle dozens of millions, as shown by the Linux kernel