Git:在成功将master与3.0版合并之后,master仍未获得所有更新

时间:2018-08-09 08:54:33

标签: git

master上进行更改并将其与version-3.0合并后,我拥有version-3.0和一个名为master的分支,我撤消了合并并进行了其他更改,然后将其合并再次。

第二次合并成功完成后,我发现master仍然不同,并且没有从version-3.0分支获取更新。

尝试再次合并时说“已经更新”。

1 个答案:

答案 0 :(得分:1)

  

我撤消合并并进行其他更改,然后再次合并。

如果您通过还原更改来撤消合并,则收回更改的唯一方法是还原该还原。

这是因为还原后的版本是一个新版本,与任何正式形式的原始更改均不相关,它在历史上比以前的合并更新,因此具有优先权。

我建议您花一些时间来了解三向合并算法的工作方式以及如何选择最新的共同祖先。一旦完成,这是很明显的,但是在简短的帖子中很难描述。您可以要求git通过询问git merge-base master version-3.0(或任何其他对修订版本)来显示合并基础,并且可以使用gitk master..version-3.0(在从主版本3.0)和gitk version-3.0..master(“我们的一面”),或者再加上其他两个修订版本。


¹好吧,您可以在不需要的合并之前基于某个版本,然后再基于该版本进行合并,但这是一种更高级的方法,不适用于具有很多其他分支的master