My project is a monorepo where the top level directory contains build infrastructure and a set of project directories for different services. Each service has its own branch of development. The branches have rc and release tags: service1-14.0-rc1 for the first service and so on.
The issue is the build infrastructure that is shared between the products. I do not know if shared work should be done on the master branch and then merged into all the product branches, and the branches should be merged back into master occasionally, and at what cadence, etc. What is a good git methodology for this setup where the product branches will exist forever? Should tags be used for master at all?