我有一个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并将其合并到开发版时,就会发生冲突。
这就是我遇到的问题。我意识到这不是使用壁球的正确方法,我进行了一些搜索,但没有找到好的解决方案。
答案 0 :(得分:2)
我建议仅在dev
和master
之间使用常规合并。如果您真的想压缩,可以为其创建一个feature
分支,然后在完成后将其压缩到dev中。
关于眼前的情况,您可以像这样将dev
的提交G
和H
改成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
分支。