We are a small company with the following systems:
- External Web Site for pre-customers (already created in ASP.NET Framework),
- External Mobile Application for customers (in progress in Flutter),
- Internal custom CRM that work on items collected by this External Web Site and Mobile App (already created in ASP.NET Core),
- Internal DataBase and REST API Server (already created in ASP.NET Core this will NOT be changed in a long time).
So External Web Site and Mobile App talks to Internal Database by API, and then Internal CRM uses this API to retrieve data collected by those External Systems. We are moving from mono repo in Subversion to GIT in VSTS.
How should we divide projects into the repository? Should we have one repository to manage all products and then later build CI/CD configured to release few projects at once? This will be easier to run development on a single machine with API running in the background. Or should we have few repositories with Test environment to manage API and Database version? This will require setting up an additional server for Web API and Database.
I am asking from a project manager and developer perspective what will be easier and more convenient to use and manage?