移动(或“撤消”)最后的git提交到unstaged区域

什么是最好的方式来移动你的最后一个git提交到“更改不上演”+“未跟踪文件”区域(提交问题是不推动/只在你的本地回购,有效地从头部删除)?

换句话说,你如何回滚一个提交,但自动将这个差异应用到你的非分离区域?

将文件标记为提交使用

git reset --soft HEAD^ 

否则

 git reset HEAD^ 

--soft

(…)这将保留所有更改的文件“更改被提交”,因为git状态会把它。

git-extras提供了一个git undo命令,这个命令是一个更容易记住的做同样事情的方法(以及许多其他方便的额外命令,如名称所示)。