命令:git checkout -- file
命令git checkout -- readme.txt
意思就是,把readme.txt
文件在工作区的修改全部撤销,这里有两种情况:
一种是readme.txt
自修改后还没有被放到暂存区,现在,撤销修改就回到和版本库一模一样的状态;
一种是readme.txt
已经添加到暂存区后,又作了修改,现在,撤销修改就回到添加到暂存区后的状态。
总之,就是让这个文件回到最近一次git commit
或git add
时的状态。
命令:git reset HEAD file
可以把暂存区的修改撤销掉(unstage),重新放回工作区
1.文件 | 文件修改后 | add | add后 | commit(提交) | commit后
| 工作区 | | 暂存区 | |当前分支(head)
2. add 之前的状态还原 git checkout -- [文件名]
add 之后的文件还原 git reset HEAD 再git checkout -- [文件名]
commit 之后的文 件还原 git reset --hard HEAD^或 git reset --hard [版本号]