git找回删除的stash
文章目录
- 问题描述
- 分析和解决
- 方法一
- 方法二
- 参考资料
问题描述
不小心将刚stash的change删除了,导致之前的工作内容都没有了
分析和解决
方法一
通过git fsck --unreachable
或者git fsck -- lost -found
命令可以列出正常途径无法看见的节点,然后出现一个列表blob/commit/tree + 一串表示版本的字符。
由上而下可以看见最近的一次commit也就是那次stash的内容,可以通过git show "版本号"
查看确定是否是自己要找回的节点,忽略dangling blob 的类型的记录,只找 dangling commit 的记录。
确定之后用git merge “版本号”
命令即可恢复到stash之前的状态。
方法二
利用IDEA自带的功能,
- 首先右键自己的项目或某个文件夹、或者某个文件,选择Local History -> Show History
- 然后就可以看到历史记录了
- 选择对应的记录右键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相关推荐
- Git 找回删除的分支
我本地有两个分支,然后我删除了 save 分支 参见 上一篇博客 git reflog 解析 查看所有的引用变动的日志 git reflog 如下图,这里我们看到,并没有删除分支的记录,我们切回到被删 ...
- 删除文件 通过git找回删除的本地库文件
1.新建一个test2.txt 2.add到暂存区 3.commit到本地仓库 4.通过rm删除该文件,通过ll查看文件已经被删除 5.将删除操作同步到暂存区 6.将删除操作同步到本地库 7.查看日志 ...
- git找回本地被覆盖或者删除的文件/确保本地代码为最新时,强制使本地文件覆盖git库文件
操作前提(老手可略过不看): 1.进入代码本地根目录下(也就是当初你提交到git库上的路径,特点是此目录下带.git文件夹) 2.在空白处点击右键 选择Git Bash Here进入git控制台 一. ...
- git找回被删除的文件记录
git找回被删除的文件记录 git log --stat --all --full-history -- "**/TestScene.*" 不清楚文件完整路径,使用的通配符
- linux git 撤销删除文件,删除文件以后,如何通过git撤销删除的文件,不提交到远端代码库...
检查状态,看看发生了什么: $ git status On branch master Changed but not updated: (use "git add/rm ..." ...
- git submodule 删除及更新URL
git submodule 删除及更新URL 转载 2016年03月08日 10:27:21 删除一个submodule 1.删除 .gitsubmodule中对应submodule的条目 2.删除 ...
- git 如何删除本地创建的仓库(转载自 https://segmentfault.com/q/1010000002996177?_ea=262685)...
可以先清除本地文件夹下的git文件,然后在重新初始化新建的git仓库 //删除文件夹下的所有 .git 文件 find . -name ".git" | xargs rm -Rf ...
- Git -- 如何删除本地仓库
首先可以创建一个文件夹,进入文件夹,并初始化一个本地仓库 Administrator@GVA7WCIPQXBLZ67 MINGW64 ~ $ mkdir test1Administrator@GVA7 ...
- git暂存工作区stash
本文git版本1.9.6 git名称stash:帮助开发人员暂时搁置当前已做的改动,倒退到改动前的状态,进行其他的必要操作(比如解决一个bug等),待解决bug后重新载入之前搁置的改动. 可以把执行s ...
最新文章
- 程序员吐槽:去再好的互联网公司也就是个打工仔,还累出一身病
- Hadoop之Storm命令
- Ubuntu15.04 网站服务器环境搭建,php/html/css等学习环境搭建教程
- 图解Windows下使用SSH Secure Shell Client远程连接Linux
- docker-elk装IK自定义分词库
- worker进程和task进程区别_celery 每个 worker 在执行任务时,如何配置一定数量的 task?...
- hdu 4150 Powerful Incantation
- 力扣977,有序数组的平方(JavaScript)
- Comments on The Ph.D. grind------by Yishi
- Python中隐藏了你不知道的10个彩蛋
- 三级等级保护之安全管理中心
- c语言的二维数组的指针访问,用指针访问二维数组
- 使用Excel TRIMMEAN忽略异常值
- JAVA专业课题研究方向有哪些,课题研究方向有哪些
- 2022款联想拯救者Y9000P和Y9000X的区别
- 使用mac 终端登录腾讯云服务器
- cannot simultaneously fetch multiple bags 异常的解决办法
- 【思维论01】如何让自己像打王者荣耀一样发了疯、石乐志的学习?
- 接口自动化测试框架-完整测试用例模板
- 乘”公“而上,Golff腾飞AMA实录