git stash 误删恢复

背景:辛辛苦苦码了一下午的代码,由于要切换分支,懒得提交,就git stash暂存起来了,然后突然脑一抽,觉得git stash list东西太多,就执行了一下 git stash clear.......

找回:

(1)百度

  git fsck --unreachable 找到一堆的unreachable的记录,由于是无序的,所以需要一个个git show 「记录ID」 才能判断是不是自己需要的,很考验运气

  • blob 用来存储文件数据,通常是一个文件
  • tree 有点像一个目录,它管理一些treeblob,就像文件和子目录
  • tag 标签,用来标记某一次的commit
  • commit 只指向一个tree,它用来标记项目某一个特定时间点的状态。它包括一些关于时间点的元数据,比如时间戳、最近一次提交的作者,指向上次提交的指针等等。

(2) google 

git log --graph --oneline --decorate $( git fsck --no-reflog | awk '/dangling commit/ {print $3}' )

可以看到一个明显的操作记录,按照时间顺序,找到记录 git stash apply 「记录ID」即可

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值