Git合并 - 不从远程分支合并所有更改

10

我从主分支(master)创建了一个名为extra_work的分支。在主分支上进行了很多更改,包括删除一些文件。现在我尝试将分支“extra_work”合并到主分支中,但它没有完全合并。它没有添加我在主分支中删除的文件,基本上是我撤消的所有工作,现在我想将它们重新添加到主分支中。 如何合并这两个分支,以便来自“extra_work”分支的所有额外文件/工作都合并到主分支中。 谢谢

2个回答

16

将你的extra_work分支变基到master上。这将把你的extra_work分支回到你创建它时的状态,并将来自master的提交应用到extra_work上。然后它会将所有从extra_work中产生的提交再次播放到自身上。如果在此之后检查git log,你将看到来自master的提交更深入地融入了该分支的历史。然后,你应该能够轻松地合并到master上。

git rebase master

Rebase 是指变更从层次结构的顶部向下传递的方式,而合并则是它们向上流动的方式。 - CrandellWS

0
我最近在进行重构时遇到了同样的问题。我通过使用git rebase解决了这个问题,从master重新定位到extra-work。我并不完全理解整个过程,但是像你经历的那样合并非常糟糕,但是在这个特定的方向上重新定位非常容易。请参阅有关重新定位的Git书籍:http://book.git-scm.com/4_rebasing.html

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接