文章目录

  • 问题描述
  • 分析和解决
    • 方法一
    • 方法二
  • 参考资料

问题描述

不小心将刚stash的change删除了,导致之前的工作内容都没有了

分析和解决

方法一

通过git fsck --unreachable或者git fsck -- lost -found命令可以列出正常途径无法看见的节点,然后出现一个列表blob/commit/tree + 一串表示版本的字符。
由上而下可以看见最近的一次commit也就是那次stash的内容,可以通过git show "版本号" 查看确定是否是自己要找回的节点,忽略dangling blob 的类型的记录,只找 dangling commit 的记录。
确定之后用git merge “版本号”命令即可恢复到stash之前的状态。

方法二

利用IDEA自带的功能,

  1. 首先右键自己的项目或某个文件夹、或者某个文件,选择Local History -> Show History
  2. 然后就可以看到历史记录了
  3. 选择对应的记录右键Revert就可以了

参考资料

官网https://git-scm.com/docs/git-stash

Recovering stash entries that were cleared/dropped erroneously
If you mistakenly drop or clear stash entries, they cannot be recovered through the normal safety mechanisms. However, you can try the following incantation to get a list of stash entries that are still in your repository, but not reachable any more:

git fsck --unreachable |
grep commit | cut -d\  -f3 |
xargs git log --merges --no-walk --grep=WIP

git找回删除的stash相关推荐

  1. Git 找回删除的分支

    我本地有两个分支,然后我删除了 save 分支 参见 上一篇博客 git reflog 解析 查看所有的引用变动的日志 git reflog 如下图,这里我们看到,并没有删除分支的记录,我们切回到被删 ...

  2. 删除文件 通过git找回删除的本地库文件

    1.新建一个test2.txt 2.add到暂存区 3.commit到本地仓库 4.通过rm删除该文件,通过ll查看文件已经被删除 5.将删除操作同步到暂存区 6.将删除操作同步到本地库 7.查看日志 ...

  3. git找回本地被覆盖或者删除的文件/确保本地代码为最新时,强制使本地文件覆盖git库文件

    操作前提(老手可略过不看): 1.进入代码本地根目录下(也就是当初你提交到git库上的路径,特点是此目录下带.git文件夹) 2.在空白处点击右键 选择Git Bash Here进入git控制台 一. ...

  4. git找回被删除的文件记录

    git找回被删除的文件记录 git log --stat --all --full-history -- "**/TestScene.*" 不清楚文件完整路径,使用的通配符

  5. linux git 撤销删除文件,删除文件以后,如何通过git撤销删除的文件,不提交到远端代码库...

    检查状态,看看发生了什么: $ git status On branch master Changed but not updated: (use "git add/rm ..." ...

  6. git submodule 删除及更新URL

    git submodule 删除及更新URL 转载 2016年03月08日 10:27:21 删除一个submodule 1.删除 .gitsubmodule中对应submodule的条目 2.删除 ...

  7. git 如何删除本地创建的仓库(转载自 https://segmentfault.com/q/1010000002996177?_ea=262685)...

    可以先清除本地文件夹下的git文件,然后在重新初始化新建的git仓库 //删除文件夹下的所有 .git 文件 find . -name ".git" | xargs rm -Rf ...

  8. Git -- 如何删除本地仓库

    首先可以创建一个文件夹,进入文件夹,并初始化一个本地仓库 Administrator@GVA7WCIPQXBLZ67 MINGW64 ~ $ mkdir test1Administrator@GVA7 ...

  9. git暂存工作区stash

    本文git版本1.9.6 git名称stash:帮助开发人员暂时搁置当前已做的改动,倒退到改动前的状态,进行其他的必要操作(比如解决一个bug等),待解决bug后重新载入之前搁置的改动. 可以把执行s ...

最新文章

  1. 程序员吐槽:去再好的互联网公司也就是个打工仔,还累出一身病
  2. Hadoop之Storm命令
  3. Ubuntu15.04 网站服务器环境搭建,php/html/css等学习环境搭建教程
  4. 图解Windows下使用SSH Secure Shell Client远程连接Linux
  5. docker-elk装IK自定义分词库
  6. worker进程和task进程区别_celery 每个 worker 在执行任务时,如何配置一定数量的 task?...
  7. hdu 4150 Powerful Incantation
  8. 力扣977,有序数组的平方(JavaScript)
  9. Comments on The Ph.D. grind------by Yishi
  10. Python中隐藏了你不知道的10个彩蛋
  11. 三级等级保护之安全管理中心
  12. c语言的二维数组的指针访问,用指针访问二维数组
  13. 使用Excel TRIMMEAN忽略异常值
  14. JAVA专业课题研究方向有哪些,课题研究方向有哪些
  15. 2022款联想拯救者Y9000P和Y9000X的区别
  16. 使用mac 终端登录腾讯云服务器
  17. cannot simultaneously fetch multiple bags 异常的解决办法
  18. 【思维论01】如何让自己像打王者荣耀一样发了疯、石乐志的学习?
  19. 接口自动化测试框架-完整测试用例模板
  20. 乘”公“而上,Golff腾飞AMA实录

热门文章

  1. 嵌入式软件工程师—成长笔记#01
  2. zookeeper节点类型,整合代码实现服务器动态监听
  3. 使用VMware安装Centos6的步骤
  4. svn分支开发与主干合并(branch merge)
  5. Python3:好玩游戏的物品清单 和 列表到字典的函数
  6. 关于拉姆达,委托,匿名函数
  7. 如何使用java解析json文件并将其写入数据库
  8. windows7远程桌面连接时崩溃问题
  9. IDEA基本使用(三):模板
  10. DSP_TMS320F28335_PIE学习笔记