gpt4 book ai didi

GIT:我如何从一个分支到另一个分支进行部分 merge ?

转载 作者:太空狗 更新时间:2023-10-29 13:06:17 26 4
gpt4 key购买 nike

我在一个分支上提交了 A-B-C-D并想将 A-B-C merge 到另一个。

我知道您可以一个一个地执行 git cherry-pick,我的问题是我是否可以将这些提交组合在一起并希望进行压缩。

最佳答案

Autocracy说,git rebase可能是您想要的。

一个例子:

假设您有 A-B-C-D 并且想要将 A-B-C merge 到 Y。创建 C 的克隆并将克隆 rebase 到 Y:

git checkout -b C_copy C
git rebase --onto Y A~1 C_copy # <= --onto [target] [source] [what]

检查是否一切顺利,并在必要时解决冲突。

现在你在 Y 上得到了 C_copy,像这样:Y-[A_copy]-[B-copy]-C_copy

您可以使用交互式 rebase 来编辑它,例如压缩它(假设你还在 C_copy):

git rebase -i HEAD~3

如果出现问题,您可以丢弃 C_copy,因为它不会影响 C

现在您可以将 Y 快进到 C_copy 或使用 git merge --no-ff merge 它(指定 --no-commit 如果您愿意,可以编辑您的提交):

git checkout Y
git merge --no-ff [--no-commit] C_copy

关于GIT:我如何从一个分支到另一个分支进行部分 merge ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5343477/

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