One Repo to Rule them All?

Posted by Tejus Parikh on May 21, 2012

For the longest time our projects were setup in a mostly canonical maven way. Each module was separated into multiple sub modules. Each top level module got its own source-control repository.

The initial idea was each module was its own thing and our lives would be easier if we could version each project independently.

Reality did not match up with that thought. Our features and functionality grew along with the pace of our major releases. The once separated modules became developed concurrently as they call communicated with each other. To manage the maven tree, we have to either use SNAPSHOT everywhere or version everything. Each of those solutions have problems.

I’ve never had to manage this much source code changing this fast, so I could use some advice. I think the best solution would be to merge all the individual repositories into one repo. In my head, these are the pro’s and con’s I can think of:

Pro:

Con:

What I’d like to know is what else am I not thinking of? Has anyone else had some experience they’d like to share? Please leave a comment or send a tweet @vi_jedi.

Related Posts:

Tejus Parikh

Tejus is an software developer, now working at large companies. Find out when I write new posts on twitter, via RSS or subscribe to the newsletter: