github合并rebase分支而没有冲突

问题描述

我有两个兄弟分支(来自master分支),在将两个分支与master分支合并时遇到冲突。 我必须将它们与解决冲突合并(或合并冲突修复提交)。

主提交1.初始化 branch1提交为1. init(继承自master)2. commit1 branch2的提交是1. init(继承自master)2. commit2

在主分支上使用git merge branch1时。它工作正常,但随后在运行git merge branch2后出现冲突。我需要使用git rebase将branch2合并到master而不需要添加更多提交的帮助

解决方法

                   o---o---o  branch1   
                  /
 o---o---o---o---o---o---o  master
                  \
                   o---o---o---o---o  branch2

从主分支首先合并分支1:

git merge branch1
                   o---o---o  branch1   
                  /         \
 o---o---o---o---o---o---o---o  master
                  \
                   o---o---o---o---o  branch2

然后将branch2重新设置为主节点:

git rebase master branch2

您会遇到一些冲突:

First,rewinding head to replay your work on top of it...
Applying: branch2
Using index info to reconstruct a base tree...
M   fileXXX
Falling back to patching base and 3-way merge...
CONFLICT (content): Merge conflict in fileXXX

Resolve all conflicts manually,mark them as resolved with
"git add/rm <conflicted_files>",then run "git rebase --continue".
You can instead skip this commit: run "git rebase --skip".
To abort and get back to the state before "git rebase",run "git rebase --abort".

编辑每个冲突文件以修复冲突,然后

git add fileXXX

git rebase --continue

您现在有branch2基于主服务器了

                   o---o---o  branch1   
                  /         \
 o---o---o---o---o---o---o---o  master
                              \
                               o'--o'--o'--o'--o'  branch2

现在将branch2合并为master

git checkout master
git merge branch2
                   o---o---o  branch1   
                  /         \
 o---o---o---o---o---o---o---o---o'--o'--o'--o'--o'  master                               

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...