Monolith Repositories with Git
Google and Facebook store their codebase into one giant code repository. Symfony has been doing the same thanks to Git and some secret sauce with great success since 2010.
Having only one repository makes code management much easier for end users and core contributors: one central place to submit pull requests and report bugs, simple cross-project atomic changes, fast releases, and more.
But what about users wanting to use only one component? Enter "repository splitting". After learning some theory about subtree splits and how to create them with the Git built-in but slow "subtree" command, I will talk about the tool I developed using libgit2 and Go to make the process almost real time.
If you have a microservice oriented architecture and manage one repository per microservice, you could probably benefit from using the same technique with one repository for development and read-only splits for packaging and deployment.