gpt4 book ai didi

Squash merge 后的 Git 冲突

转载 作者:行者123 更新时间:2023-12-05 04:01:44 24 4
gpt4 key购买 nike

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

master: A--B--C

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

然后我想发布D和E,所以我从master创建一个release-1.0分支,squash merge dev到release-1.0,所以

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

发布后,我将 release-1.0 merge 到 master。

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

然后我在开发上继续我的新改动

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

当我从 master 创建 release-2.0 并将 dev merge 到它时发生冲突。

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

最佳答案

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

关于手头的情况,您可以像这样将 dev 提交 GH rebase 到 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

然后您可以简单地快速 merge master 分支。

关于 Squash merge 后的 Git 冲突,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55113672/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com