Git – Microservices: How to store source code of many microservices


Currently, I have 20 microservices for one project. And every microservice stored in separate GIT reposotiry.
Subsequently, the number of services will increase to 200 (or more).

Every service has unit tests and integration tests. Every service has build in TeamCity (Continuous integration server).

Question: How to store source code of 200 microservices for one project? In one repository or in separate repositories?

Best Solution

Unless those micro-services are tightly coupled (meaning it wouldn't make sense to download only some of them, and you would only work with all of them), keeping them each in a separate Git repo is recommended.

But you can still reference them as submodule in a parent repo in order to keep track of their state at any given time.