我目前这,四个分支,三个环境,release是生产环境代码,develop分支代码和正式环境完全一样,release-test是测试环境,release-dev开发用来测试的环境 正常开发需求,就是基于develop创建出一个分支dev-xxxxx,然后修改好,合并到release-dev自测,自测后把dev-xxxxx合到release-test,给测试人员测试,正式上线的时候把测试通过、需要上线的dev-xxxxx分支往develop合,再把develop往release合。
目前存在的问题就是三个环境的代码不一致,除了漏合分支的情况(测试时发现问题,修复时只合到了release-test,没有合并到release-dev),还有这个情况:release-dev和release-test都有那种由于各个原因,没有合并到生产环境的代码(比如测试过程中提出这个需求放弃了),导致有时从dev-xxxxx往release-dev或者release-test合并时存在冲突。
有个新同事,说他以前的公司,是相当于不需要develop,开发时基于release-dev创建分支,每个开发都往release-dev合代码(自己处理冲突),自测后用release-dev往release-test合代码,测试完后用release-test往release合代码。