Litmus Test for VCS Repository Separation
How do you or should you break a monolithic repository into smaller pieces?
The question of whether separation should take place and how granular it should be is a debate that happens in very significantly large project I've been involved with to date.
If the goal is to make developers lives easier, then the split must certainly not cause more harm than good. There can't be a hard and fast rule such as "each module should have it's own repository" because the day to day impact of a project maintained by a single individual could be horrendous if the project contains hundreds of modules. On the other hand, a project with thoudsands of developers and thoudsands of modules likely will struggle equaly with such a rule.
Therefore I'm working on a initial litmus test to determine the criteria for breaking a large repository into several smaller repositories.