将最后一个git提交移动(或“撤消”)到非暂存区域

时间:2012-06-01 08:27:39

标签: git

将最后一个git提交移回“更改未暂存”+“未跟踪文件”区域的最佳方法是什么(有问题的提交未被推送/仅在您的本地存储中,有效地将其从HEAD中删除) ?

换句话说,你如何回滚提交,但是自动将差异应用到你的未分区?

2 个答案:

答案 0 :(得分:193)

将标记为提交的文件用于

git reset --soft HEAD^

否则

git reset HEAD^
  

--soft

     

(...)这将保留所有已更改的文件“要提交的更改”,因为git status会将其设置为。

答案 1 :(得分:6)

git-extras提供git undo命令,这是一种更容易记住的做同样事情的方式(以及其他一些方便的附加内容,顾名思义)。