git 合并中的冲突问题

n53p2ov0  于 2023-04-28  发布在  Git
关注(0)|答案(1)|浏览(207)

对于我的应用程序的每个环境,我有以下分支。Dev(Dev Env)、UAT(UAT Env)、Prod(Prod Env)、Master分支(与Prod Branch同步,用作黄金映像)
我目前的方法是,每当需要一个新特性时,我们从Master创建一个新的特性分支,然后合并到Dev,一旦Dev签署,我们就将特性分支与UAT合并,然后合并到Prod。

问题:

  • 到目前为止,我的三个环境都是同步的,因此这种方法可以无缝地工作
  • 现在,最近我们已经改变了我们现有的功能之一,让我们称之为ABC
  • 因此,我们从Master创建了一个新的bug修复分支,修复了bug,然后将其与Dev合并。
  • 合并时,我们面临着冲突,因为我们将abc改为ABC
  • 现在我们有了一个新的特性,所以按照实践,我们从Master那里拿了一个分支,做了一些改变,当与Dev合并时,我们再次面临冲突

将重复此操作,直到Dev上可用的错误修复未在Prod上发布,并且主分支更新。
我该如何解决这个问题?这样每次合并Dev都不会给我带来任何冲突。

lymnna71

lymnna711#

在与Dev合并时,我们再次面临冲突
这就是git rerere派上用场的地方。我在“Are there any downsides to enabling git rerere ?”中提到过它(以避免每次重基都要解决它们)。
这个想法是,从master创建的新特性分支在合并到Dev时将受益于rerere训练。它将以可预测的(和自动化的)方式解决已知的冲突。

相关问题