gpt4 book ai didi

git:如何在 merge 后重新设置分支并保留 merge 提交的更改

转载 作者:太空狗 更新时间:2023-10-29 13:42:46 25 4
gpt4 key购买 nike

我有这样的历史:

A - B - M
\ /
C

A、B 和 M 是 master,C 在功能分支上。

我犯了两个错误:

  1. 在我完成之前,我没有意识到公司远程不接受 merge 提交。
  2. 除了简单地解决冲突之外,我在 Merge 提交中更改了很多东西。

我想 rebase ,所以它看起来像 A - B - C - M,C - M 可能压在一起。

我只找到了one question on the internet which actually looked quite similar to my case ,唯一的回应是“merge 没问题”。

我承认我仍然不是 100% 熟悉 rebase 语法,但是我告诉 git rebase 的任何组合,有或没有 -p 和/或 -i,它要么说没有什么可以 rebase (noop),要么说它不起作用。

似乎合乎逻辑的选择是踩到 C 和 rebase -ip master,但它并没有达到我预期的效果。

最佳答案

鉴于这段历史:

A - B - M
\ /
C

在 M 处,你软重置为 B,并提交,然后你将得到 A - B - M',这似乎是你想要的:

git checkout M
git reset B
git commit

分支的内容将保持不变,这些命令都不会改变这一点,只有 C 从历史记录中删除,使其看起来像一个直分支。

关于git:如何在 merge 后重新设置分支并保留 merge 提交的更改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40809584/

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