将最后一个git提交移回“更改未暂存”+“未跟踪文件”区域的最佳方法是什么(有问题的提交未被推送/仅在您的本地存储中,有效地将其从HEAD中删除) ?
换句话说,你如何回滚提交,但是自动将差异应用到你的未分区?
答案 0 :(得分:193)
将标记为提交的文件用于
git reset --soft HEAD^
否则
git reset HEAD^
--soft
(...)这将保留所有已更改的文件“要提交的更改”,因为git status会将其设置为。
答案 1 :(得分:6)
git-extras提供git undo
命令,这是一种更容易记住的做同样事情的方式(以及其他一些方便的附加内容,顾名思义)。