我正在尝试将少量代码更改从分支文件合并到经过大量修改的主干文件(主要是通过向开关添加案例)。当我尝试合并代码时,我正在从旧文件合并到新文件(从更少的情况到更多的情况)。当我告诉 Visual Studio 从分支合并到主干时,它会删除所有更新的(新)案例,并用分支中添加的案例替换最后一个(新)案例。前任:
树干:
SWITCH(var){
CASE(123)
thing = "bnm"
BREAK
CASE(124)
thing = "gjh"
BREAK
CASE(125)
thing = "sdf"
BREAK
CASE(126)
thing = "asd"
BREAK
CASE(127)
thing = "qwe"
BREAK
}
分支:
SWITCH(var){
CASE(123)
thing = "bnm"
BREAK
CASE(124)
thing = "gjh"
BREAK
CASE(325)
thing = "poi"
BREAK
}
合并结果:
SWITCH(var){
CASE(123)
thing = "bnm"
BREAK
CASE(124)
thing = "gjh"
BREAK
CASE(325)
thing = "poi"
BREAK
}
期望的结果:
SWITCH(var){
CASE(123)
thing = "bnm"
BREAK
CASE(124)
thing = "gjh"
BREAK
CASE(125)
thing = "sdf"
BREAK
CASE(126)
thing = "asd"
BREAK
CASE(127)
thing = "qwe"
BREAK
CASE(325)
thing = "poi"
BREAK
}
我想要发生的是它隔离新案例并将其移动到交换机中。我希望有一种方法可以手动决定如何合并文件,或者有一种方法可以“教”合并工具如何处理大的更改。
在该示例中,不同情况的唯一区别是 case ( CASE(value)
) 中的值和分配给 的值thing
。此外,从未检测到任何合并冲突。
如果无法微调比较工具,是否还有其他擅长自动合并的工具?
更新:这只是当您进行毫无根据的合并时的问题。如果您不进行毫无根据的合并,则可以正常工作