#将所有文件从暂存区退回到工作区
git reset
#将上一次commit撤销回暂存区
git reset --soft HEAD~1
#恢复暂存区的指定文件到工作区
git checkout [file]
# 恢复暂存区的所有文件到工作区
git checkout .
#文件未提交时则退回到与版本库中一致,文件添加到暂存区后又做了修改,则退回到暂存区中的修改
git checkout -- readme.txt
# 恢复某个commit的指定文件到暂存区和工作区
git checkout [commit] [file]
# 重置暂存区的指定文件,与上一次commit保持一致,但工作区不变
git reset [file]
# 重置当前分支的指针为指定commit,同时重置暂存区,但工作区不变
git reset [commit]
# 重置暂存区与工作区,与上一次commit保持一致
git reset --hard
# 重置当前分支的HEAD为指定commit,同时重置暂存区和工作区,与指定commit一致
git reset --hard [commit]
# 重置当前HEAD为指定commit,但保持暂存区和工作区不变
git reset --keep [commit]
#从暂存区删除文件
git rm file.txt