Has anybody on this forum got experience of using a monorepo? I work with microservices and we have so many repositories it is causing issues managing them. I have googled around and monorepos appear to be a recommended alternative but it does not look like a small change to our deployment solution.
As you know, like for all others architectural/design/coding concepts, some say go for it, some say do not.
The truth is nothing is good or bad all the time. It all comes down to tradeoff between some factors specific to your application, team(s) and organization and which you are the one who are aware of them better.
I just found this paragraph on the Internet and I want to share it here:
Some of tech’s biggest names use a monorepo, including Google, Facebook, Twitter, and others. Surely if these companies all use a monorepo, the benefits must be tremendous, and we should all do the same, right? Wrong! As the title says: please, do not use a monorepo! Why? Because, at scale, a monorepo must solve every problem that a polyrepo must solve, with the downside of encouraging tight coupling, and the additional herculean effort of tackling VCS scalability . Thus, in the medium to long term, a monorepo provides zero organizational benefits, while inevitably leaving some of an organization’s best engineers with a wicked case of PTSD (manifested via drooling and incoherent mumbling about git performance internals).