壁球合并后的Git冲突

时间:2019-03-12 03:25:54

标签: git git-merge

我有一个master分支和一个dev分支。 例如

master: A--B--C

dev: A--B--C--D--E

然后我要发布D和E,所以我创建了一个master发行版1.0分支,将壁画合并dev发行到release-1.0,所以

release-1.0: A--B--C--F(D&E)

发布后,我将release-1.0合并为master。

master: A--B--C--F(D&E)

然后我继续在dev上进行新的更改

dev: A--B--C--D--E--G--H

当我从master创建release-2.0并将其合并到开发版时,就会发生冲突。

这就是我遇到的问题。我意识到这不是使用壁球的正确方法,我进行了一些搜索,但没有找到好的解决方案。

1 个答案:

答案 0 :(得分:2)

我建议仅在devmaster之间使用常规合并。如果您真的想压缩,可以为其创建一个feature分支,然后在完成后将其压缩到dev中。

关于眼前的情况,您可以像这样将dev的提交GH改成master

git checkout dev
git rebase --onto master <E commit hash>

这将是您最终得到的:

* dbd43d8 (HEAD -> dev) H
* c203a3d G
* 39a258a (master) F(D&E)
* 538454c C
* 8aa2e42 B
* 2f3facb A

然后,您可以简单地快速合并master分支。