例如,我有以下文件:
现在有两个不同的分支对其进行更改。我进行了更改:
在分支1中:
在branch2分支中:
有没有办法在git中实现这种合并?根据评论,我认为这种合并的步骤如下:
// first part
function() {
var timer = 1;
}
// second part
function() {
var timer = 2;
}
// third part
function() {
var timer = 3;
}
现在有两个不同的分支对其进行更改。我进行了更改:
在分支1中:
// first part
function() {
var timer = "changed in branch1";
}
// second part
function() {
var timer = 2;
}
// third part
function() {
var timer = 3;
}
在branch2分支中:
// first part
function() {
var timer = 1;
}
// second part
function() {
var timer = "changed in branch2";
}
// third part
function() {
var timer = 3;
}
使用三方合并,这些更改将会干净地合并,因为每个分支都修改了与另一个分支不同的代码块。然而,在合并时,我希望得到以下结果:
// first part
function() {
<<<<<<< branch1
var timer = "changed in branch1";
=======
var timer = 1;
>>>>>>> branch2
}
// second part
function() {
<<<<<<< branch1
var timer = 2;
=======
var timer = "changed in branch2";
>>>>>>> branch2
}
// third part
function() {
var timer = 3;
}
有没有办法在git中实现这种合并?根据评论,我认为这种合并的步骤如下:
- 制作文件的差异
- 将不在差异中的块插入最终版本
- 使用冲突标记标记不同的块
master
中的featureA
代码,而我不会触碰featureA
代码,因此合并后我没有冲突。但是,未来的某个时候,我发现featureA
已经损坏了。因此,也许我想合并一些没有共同祖先的文件,以查看master
中的featureA
代码是否与我在不同分支中版本中的相同代码不同。 - Max Koretskyi