我已经有几个提交,我需要撤消最新的一个,但要保留我在其中所做的更改。请建议如何做到这一点。谢谢。
最佳答案
git reset --soft HEAD^
请注意,只有在 HEAD 尚未被推送时,您才应该倒回 HEAD。
编辑 回应您对原始问题的评论:
如果您只想编辑最近的提交,Git 有一个简洁的功能 commit --amend
。只需使用 git add
/git rm
/git checkout
直到您的索引处于您想要的状态(添加了新的更改,一些更改扔掉,删除文件,...)。然后使用 git commit --amend
,它会 pop vi(或者你在 core.editor
中配置的任何内容)以及你最后一次提交的提交消息供你编辑。
请注意,当我说 ›edit the most recent commit‹ 时,Git 实际上创建了一个新的提交。所以不要这样做,当提交已经从其他人那里提取(即推送到您的公共(public)存储库)
关于git - 如何撤消最新提交并保留更改?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7317725/