Git 误删本地代码恢复

先复习一下本地 git 的三个区域着急的老哥可以直接冲恢复误删文件总结

本地 git 的面貌

Git 误删本地代码恢复

如图(向廖雪峰老师借的图,0.0)所示,本地有三块区域,工作区、暂存区(stage)和版本区(分支)

注意版本区和版本库的区别,我习惯于把分支称为版本区,可能老哥们有别的习惯,特此提醒,以免误导

git add 就是把 工作区的文件加到 暂存区git commit就是把 暂存区的文件加到 版本区

使用 git status可以查看暂存区状态

Git 误删本地代码恢复

第一种情况是对比远程仓库分支,发现有两个 commit 可以 push

第二种情况是工作区和暂存区更新 NextTest.java,版本区未更新

第三种情况是工作区更新了 NewTest.java,暂存区版本区未更新

第四种情况是工作区新增了 LastTest.java,未添加到缓存区和版本区

值得注意的是,在 idea 中,第二种和第三种情况文件都显示为蓝色,个人认为是因为在工作区修改的文件可以通过 git commit -a直接绕过暂存区提交到版本区,因此对这两种情况不作区分。但实际上这两种情况是不同的。

Git 误删本地代码恢复

恢复误删文件

  1. 使用 git status 查看暂存区状态 Git 误删本地代码恢复 可以发现直接删除文件后删除的文件更新到了暂存区 这时候就有两种方案: 1. 提交修改,版本回退;2. 清空暂存区,撤销修改 下面说一下方案2
  2. 使用 git restore --staged <file>...</file> 删除暂存区文件 Git 误删本地代码恢复
  3. 使用 git checkout -- <file>...</file> 检出版本区的文件

总结

方案一:

  1. git commit 提交新版本
  2. git log --oneline 查看上一个版本的版本号
  3. git reset <commitid></commitid> 或者 git reset HEAD~1

方案二:

  1. git status查看删除的文件
  2. git restore --staged <file>...</file> 从暂存区移除这些文件
  3. git checkout -- <file>...</file> 撤销修改

Original: https://www.cnblogs.com/weirwei/p/14170270.html
Author: weirwei
Title: Git 误删本地代码恢复

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/591874/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球