git撤销、还原、放弃本地文件修改

1,059 阅读1分钟

修改了代码但是不想提交了,下面3中情况,教你怎么操作!

1. 未使用 git add 缓存代码

  • 使用 git checkout -- 文件路径名 放弃某个文件修改
git checkout -- 文件路径名
  • 使用git checkout . 放弃所有文件修改
git checkout .

2. 已经使用 git add 缓存代码,未使用git commit

  • 使用 git reset HEAD 文件名放弃某个文件修改
git reset HEAD 文件名
  • 使用 git reset HEAD放弃所有文件修改
git reset HEAD
  • 此命令用来清除 git 对于文件修改的缓存。相当于撤销 git add 命令所在的工作。
  • 使用本命令后,本地的修改并不会消失,而是回到了第一步1. 未使用git add 缓存代码,继续使用git checkout -- 文件名,就可以放弃本地修改

3. 已经使用 git commit 提交了代码

  • 使用 git reset --hard HEAD^来回退到上一次commit的状态
git reset --hard HEAD^
  • 可以使用git reset --hard commitid回退到任意版本,使用git log命令查看git提交历史和commitid
git reset --hard commitid

如下是commitid

未命名1656473982.png