4 ms·
> Because it turns out big corporations that use multirepos tend to be even less efficient (about versioning) than those that use monorepos. How do you measure
by hocuspocus 6y ago
> Because it turns out big corporations that use multirepos tend to be even less efficient (about versioning) than those that use monorepos.
How do you measure that exactly?
- beagle3 6y agoPersonally, informal survey of people I know who work at big corps. Google and Microsoft have both evaluated this internally and reached that conclusion, with some of the evaluation criteria and conclusions publicly documented (though I don’t have links available on my phone, google will likely find them for you)
- hocuspocus 6y agoMicrosoft doesn't really use a monorepo. This leaves companies like Google and Facebook that made a decision fairly early in their existence, set constraints, and then spent several hundreds engineer-years into developing their own infrastructure and tools to support that decision. Does it work? Yes. Is it more efficient than what other companies of similar scale are doing? I don't believe anyone knows.
- beagle3 6y agoFrom reading articles, I got the impression Windows is one monorepo (but it doesn’t include Office) and e.g. Visual Stduio is another. So it’s true that Microsoft doesn’t use a monorepo as a whole, but e.g. just Windows itself is a codebase significantly larger and more diverse than 99% of companies would have, and it does have multiple “independents” products - Notepad is an independent module from Solitaire and they are both independent of essentially everything else, whereas e.g. File Explorer, the win32 subsystem and the kernel often need to be updated together for new features. GoogBook made it early, but re-evaluated. For sure, they found the cost of switching is higher than any potential benefit. I must say that I have not found anyone describing benefits other than “git is faster for smaller repositories” (which was very true but is only slightly true with sparse checkouts and shallow branches these days) and “I like it that way”. Yosefk has a convincing article about “if your culture is bad, it doesn’t matter; if your culture is good, monorepos are technically easier until you hit some scale wall but then they don’t become harder that multirepo at that scale” IIRc. But w.r.t Microsoft I admit I’m not very well informed, thank you for setting the record straight.