git的一些骚操作
【git】放弃本地修改
有三种情况:
1.没有执行 git add的:可以用命令
- 使用git checkout – filepathname,注意中间有–( 不要忘记中间的 “- -” ,不写就成了切换分支了!!)
git checkout -- filepathname
- 放弃所有文件修改 git checkout .
git checkout .
- 此命令用来放弃掉所有还没有加入到缓存区(就是 git add 命令)的修改:内容修改与整个文件删除
- 不会删除掉刚新建的文件。因为刚新建的文件还没已有加入到 git 的管理系统中。所以对于git是未知的。自己手动删除就好了。
2. 已使用git add 缓存代码,未使用git commit
- 使用 git reset HEAD filepathname
使用 git reset HEAD filepathname
- 放弃所有文件修改 git reset HEAD .
git reset HEAD .
执行完此命令后,文件状态就回归到第一种情况了,此时再按照情况1处理。
3.已经用 git commit 提交了的:可以用命令
- 使用 **git reset --hard HEAD^**来回退到上一次commit的状态
git reset --hard HEAD^
- 或者回退到任意版本git reset --hard commitid,使用git log命令查看git提交历史和commitid
如下是commitid

在这里插入代码片
本文介绍了如何在git中撤销、还原和放弃本地文件修改的三种情况:未执行git add时使用git checkout -- filepathname;已使用git add但未提交时使用git reset HEAD filepathname;已提交时使用git reset --hard HEAD^或指定commitid回退。
1243

被折叠的 条评论
为什么被折叠?



