Hey all, I'm a software developer working at a company that currently uses a monorepo strategy. We're juggling multiple software lines at once, and some management and lead devops engineers are looking into switching to virtual monorepos. The problem is that those advocating for this change don't really have any hands-on experience, which raises some concerns for me. I'm curious: Do you have experience with virtual monorepos? What are the advantages and disadvantages compared to traditional monorepos or multi-repo setups? What should we keep in mind regarding CI/CD while using virtual monorepos? And if you're currently using this approach, do you recommend it, or would you prefer to go back to a multi-repo setup? I'd really appreciate any insights you might have. Thanks!
2 Answers
From my point of view, virtual monorepos are just a fancy way of saying you have multiple repos with extra features. If your leads can't articulate why this change is needed, then it's probably not necessary. Simplifying might be a better route if clarity is lacking.
A virtual monorepo is essentially like having separate repositories that are interconnected, allowing for easier CI/CD and tooling, making it feel like a single large repository. This setup can streamline workflows, but it can also complicate things if not managed properly, especially without clear use cases.

Exactly! It's like a way to get some benefits of a monorepo without fully committing to it. Just be cautious about the overhead it may introduce.