git reset
git reset 将暂存区的所有文件恢复到版本库的当前版本,而工作区内容不变
git reset --hard 将暂存区和工作区的所有文件都恢复到版本库的当前版本
git reset <file> 将暂存区的指定文件恢复到版本库的当前版本,而工作区内容不变
git reset commitid 将暂存区的所有文件恢复到版本库的指定版本,而工作区内容不变(HEAD指针变化)
git reset commitid <file> 将暂存区的指定文件恢复到版本库的指定版本,而工作区内容不变(HEAD指针不变)
git reset --hard commitid 将暂存区和工作区的所有文件都恢复到版本库的指定版本
--hard 后只能有版本号,不能有路径,即没有以下命令
git reset --hard <file>
git reset --hard commitid <file>
个人对git reset的理解(有--hard时,工作区和暂存区都恢复,没有--hard时,只恢复暂存区,而不恢复工作区,操作对象是当前分支的提交版本)