In our project we have quarterly release out which 2 months are for development and 1 months is for UAT. Our is a very big project and there are around 20 teams in our project each working on some different module.
So how we follow is that we keep working on master and after 2 months we create a release branch with release version e.g. RELEASE_VERSION_20.1
. After the release we merge back the RELEASE
branch into master
.
Now we are bound to get conflicts between RELEASE_VERSION
branch and master
. Now one of the developer takes the responsibility to merge the RELEASE_VERSION
into master
. So we create branch out or master
say merge_RV20.1_into_master
. Then, he/she tries to resolve the conflict but they may not have knowledge about every module and may end up doing wrong merge i.e. some of the changes in master
might be overridden or some changes from release branch might get lost.
So is there a way that we create a merged branch merge_RV20.1_into_master
. which has all the conflicts and we can push this branch to remote, so that 1 developer from each team can checkout this branch and resolve the conflicts for which they have knowledge and push to remote ?