My team has a Git repo for a large service that incorporated a related, but fairly unique, micro-service. We recently decided to separate out the micro-service into its own service in terms of release branches and deployments (so we can deploy the micro-service independently of the large service). The gotcha is there’s common code shared between the large service and the micro service so the decoupling isn’t complete; as a result, the proposal is to keep both services building in one solution and in one repo.
For the sake of this question, let’s assume that we can’t (or won’t) move the micro service into its own repo. Is there a recommended Git branching pattern for having two releases of different “products” in the same repo?
Note that we currently use the model of having a develop branch, so I’m concerned that with each product having its own release branch, we could have nasty merge conflicts when merging back into master and develop branches across two releases.