1. 查看提交历史记录
git log
2. 查看当前文件状态
git status
一、未add加入缓存区
1. 放弃单个文件修改内容
git checkout -- filepathname
如:git checkout -- readme.md
2. 放弃所有修改的内容
git checkout .
二、已add加入缓存区
1. 放弃指定文件内容的缓存
git reset HEAD filepathname
2. 放弃所有文件内容的缓存
git reset HEAD .
该命令只是清除git对于文件修改的缓存,相当于撤销了git add的操作,所以本地的文件并不会删除,只是回到了(一)中的未加入缓存状态,如果删除文件,再使用(一)中的命令,放弃本地的修改
三、已经git commit提交
1. 回到上一次commit的状态(只撤销commit,保留工作空间代码)
git reset --hard HEAD^
2. 回退到任意版本(如:想要撤销第二次的commit,commitid则是第一次的commitId,
就是将reset一下HEAD,指向第一次的commit)
git reset --hard commitid