【问题标题】:How to merge 2 different branches into git, without overwriting changes made by the first commit如何将 2 个不同的分支合并到 git 中,而不覆盖第一次提交所做的更改
【发布时间】:2026-01-25 11:55:01
【问题描述】:

我有一个主分支“Master”,我创建了 2 个不同的分支,分别称为“Branch-A”和“Branch-B”。分支用于两个不同的功能。当我完成 Branch-A 后,我将其合并回 Master。一切都很好。

现在我完成了 B 分支。我也想将其合并到 Master 中,但我知道 Branch-B 不包含我在 Branch-A 中创建的功能,该功能现在已合并到 Master 中。 git 会看到 Branch-B 就好像代码已经改回来(就像之前将 Branch-A 合并到 Master 中一样)并覆盖 Master 中来自 Branch-A 的更改?

我希望我说清楚了。

【问题讨论】:

    标签: git git-merge git-branch


    【解决方案1】:

    不,不会的。当您合并分支 b 时,它会考虑来自 master(和分支 A,因为它已经是 master 的一部分)和分支 B 的所有更改。

    【讨论】:

    • 所以它不会将 Branch-B 中缺少代码视为更改,对吧?
    • 不。 git 所做的是,大致,获取您正在合并的分支的两个尖端之间的差异反对他们最后一个共同祖先......它实际上无法比较这两个技巧相互矛盾。
    最近更新 更多