一、撤销git add操作
修改的文件已经添加到暂存区,但是还没有执行commit操作,可以通过下面命令撤销:
git rm --cached <added_file_to_undo>
虽然暂存区的文件会被撤回,但是工作区的内容还在本地磁盘上,这样是最安全的方法。
二、撤销git commit操作
已经在本地做了一些提交,但是还没push,可以是用下面命令进行撤销:
git reset --hard
仓库纪录一直回退到指定的最后一个SHA代表的提交,那些提交就像从未发生过一样。默认情况下,git reset会保留工作目录的内容。这些提交虽然消失了,但是内容还在磁盘上。这是最安全的做法。如果你想使用一个命令来撤销所有提交和本地修改,那么请使用--hard参数吧。