Git rebase 撤消对本地分支的所有更改/提交

问题描述 投票:0回答:1

我做了一些本地更改,然后提交它们(我们称之为

commit A
)。然后我做了并提交了一些更小的更改(
commit B
),并且由于我不想用一堆小更改弄乱我的提交历史记录,所以我尝试将
commit B
压缩为
commit A
。基本上,我希望遥控器的
commit A
能够代表我在制作
commit B
后立即在本地拥有的内容。

我尝试了

git rebase -i HEAD~3
,并将
commit B
压入
commit A

然后,这将本地分支恢复到 A 和 B 之前的状态。我设法使用

git rebase --abort
恢复了此状态,但我很困惑为什么会发生这种情况,特别是因为我过去曾使用
git rebase -i HEAD~N
来实现想要的结果。

git rebase git-rebase
1个回答
0
投票

只需

git reset HEAD~2 —soft
并再次上演/提交会更容易。

至于为什么你的提交丢失了,我不确定,通常如果你使用交互式变基将提交 B 压缩到 A 中,这应该可以工作。

© www.soinside.com 2019 - 2024. All rights reserved.