git多种撤销
针对工作区
撤销工作区中某个文件的修改:
格式:
git checkout -- <file name>
tip:命令中的--很重要,没有--,就变成了“切换到另一个分支”的命令。
例如:
git checkout -- 1.txt
清空untracked file:untracked file是指新建的文件或目录,且还没加入到版本管理。
删除 untracked files
git clean -f
连 untracked 的目录也一起删掉
git clean -fd
连 gitignore 的untrack 文件/目录也一起删掉 (慎用,一般这个是用来删掉编译出来的 .o之类的文件用的)
git clean -xfd
在用上述 git clean 前,强烈建议加上 -n 参数来先看看会删掉哪些文件,防止重要文件被误删。
git clean -nxfd
git clean -nf
git clean -nfd
针对暂存区
撤销暂存区中某个文件的修改:(那么该文件的修改会回到工作区)
git reset HEAD 1.txt
直接从暂存区删除文件,工作区则不做出改变。
git rm --cached <file>
针对版本库
回退到指定版本:
git reset --hard 271eb04