合并但覆盖Git中的更改

lokaqttq  于 2023-04-19  发布在  Git
关注(0)|答案(3)|浏览(151)

当我在Git中合并一个分支到master时,我经常会遇到合并冲突。有没有一种方法可以合并一个分支并覆盖当前分支中的内容?

n8ghc7c1

n8ghc7c11#

-X ours参数添加到git merge命令。
假设你在本地分支工作,然后你想合并master中的内容:

git merge -X ours master

另一方面,如果你在master中,并且想将你的本地分支合并到master中,那么@elhadi正确地说你应该使用theirs

git merge -X theirs somebranch
bkhjykvo

bkhjykvo2#

要覆盖你的东西在你的分支,并采取他们的工作,你应该使

git merge -X theirs {remote/branch} --> example:origin/master
of1yzvn4

of1yzvn43#

我发现合并并不能真正使目标分支成为源分支的镜像副本。
如果这就是你所追求的,为了让分支100%同步,我使用了这个过程:

git merge -X theirs somebranch
git reset somebranch --hard

这会将当前分支的状态重置为合并后somebranch的HEAD。在某些情况下,如果工作目录中有未提交的文件,您可能还需要清理工作目录,整个过程将如下所示:

git merge -X theirs somebranch
git reset somebranch --hard
git clean -f

相关问题