所以我有分支master和RC分支。当我从master向RC发起拉取请求时,它显示出很多冲突。我尝试先在RC基础上(本地)重新建立基础,但没有显示重新基础冲突。
当我尝试本地合并时,我也遇到了冲突。为什么会这样呢?什么可以使rebase在没有冲突的情况下工作,但不能合并?
发布于 2017-10-11 20:40:07
我认为最有可能的原因是,提交是从合并涉及的一个分支中挑选出来的。如果rebase检测到它将要重写的提交应用了与新基础中已经包含的提交相同的文本更改,那么它将跳过该提交。(这种解释可能有些不准确,但大致是正确的…)
所以如果你有
x -- A -- B -- C <--(master)
\
D -- A' -- E <--(branch)其中A'对D所做的更改与A对x所做的更改相同(可能是精心挑选的,或者改变了基数,或者进行了压缩合并...),然后
git rebase branch master将重写D和E,跳过A'。但
git checkout master
git merge branch不会查看单个提交,因此您可能会因为A'中的更改而发生冲突。
https://stackoverflow.com/questions/46687108
复制相似问题