$ git reset --soft commitId // HEAD指向commitId指向的提交,暂存区和工作区内容不变,即commitId之后的修改已暂存,出现在git status的Changes to be committed下
$ git reset --mixed commitId // HEAD指向commitId指向的提交,暂存区恢复成commitId提交的内容,工作区仍保持当前内容,即commitId之后的修改在工作区中未暂存,出现在git status的Changes not staged for commit下
$ git reset --hard commitId // HEAD指向commitId指定的提交,暂存区和工作区也都恢复成commitId提交的内容,git status保持干净,commitId之后的修改无法找回