一、把暂存区的修改撤销掉(unstage),重新放回工作区:
1、git reset
git reset --hard 目标版本号
适用情况:
恢复到之前某个提交的版本,且那个版本之后提交的版本我们都不要了
快捷回退(以回退至前面第10个版本为例):
git reset --hard HEAD^10
想回到原来的版本:
2、git revert
git revert -n 版本号
注意: 这里可能会出现冲突,那么需要手动修改冲突的文件。而且要git add 文件名。
适用范围:
想要撤销版本二,但又不想影响撤销版本三的提交,就可以用 git revert 命令来反做版本二,生成新的版本四,这个版本四里会保留版本三的东西,但撤销了版本二的东西
二、丢弃工作区的修改,让这个文件回到最近一次git commit或git add时的状态:
$ git checkout -- readme.txt
三、丢弃所有改动:
$ git fetch origin
$ git reset --hard origin/master