首页 > 其他分享 >如何恢复丢弃的 git stash 数据

如何恢复丢弃的 git stash 数据

时间:2023-03-08 18:56:06浏览次数:39  
标签:git 丢弃 tree stash blob unreachable commit

参考:https://zhuanlan.zhihu.com/p/28948567

1、问题

不小心把缓存 stash(储藏)起来的代码删除了

  • sourcetree删除

  • 命令行删除

$ git stash list
#stash@{0}: On pine/test: test

$ git stash drop stash@{0}
#Dropped stash@{0} (897fbefe9bae04f3b70512d1a137a904a7fc909c)

2、解决

git fsck --unreachable
#查找所有unreachable记录

Checking object directories: 100% (256/256), done.
Checking objects: 100% (8338/8338), done.
unreachable tree 15011b05b3ef298a105ffe5a0ac0899084c7fa2e
unreachable tree 8286f465ed738ad25d97dbaa8d1537f22a5b8c52
unreachable blob 9306d737410ac2532c2be9b8561a3aedaca1bdab
unreachable blob 1db93bfd2022fd3d3cf526ec656104b76e5b005a
unreachable tree c13a1c9e36017443e67db34d7ec71a0e3633b51d
unreachable commit c845707e0aef81b46c71cdfab7373b7e77436ab0
unreachable commit f9540ce0db5c176d55583486938e31e9ccdabaff
unreachable commit 92d6ee4258a8f2118333421788c880eb1667a418
unreachable blob 2edc52b333a997a25f6f610e4ef12e15c2c9b9de
unreachable tree 48e2f38885a07b37a6ea9a6b5d6eb69c9c50d806
unreachable commit 2eed40a47b0328321c3992ccd87ddf2191bd32fd
unreachable blob 05fbeb18df635eb69761d6ba8a11fc8f917a69f2

  • 靠下的 commit 就是最近被删的
git show 2eed40a47b0328321c3992ccd87ddf2191bd32fd
#查看详细信息

git stash apply 2eed40a47b0328321c3992ccd87ddf2191bd32fd
#恢复被删stash的修改

git status
#查看恢复

标签:git,丢弃,tree,stash,blob,unreachable,commit
From: https://www.cnblogs.com/pine007/p/17195750.html

相关文章

  • 查看git的用户名和密码
        参考:https://blog.csdn.net/qq_42012908/article/details/116757606......
  • Git03-git基础
    1、git命令]#git--helpusage:git[--version][--help][-C<path>][-c<name>=<value>][--exec-path[=<path>]][--html-path][--man-path][--info-......
  • GitHub存储库里查找敏感数据
    GitHub存储库里查找敏感数据一些源代码搜索平台https://github.com/search?type=code&auto_enroll=truehttps://docs.gitlab.com/ee/user/search/advanced_search.html......
  • git - 记录向开源项目提交 PR.
    准备创建github账号网络通畅开始1、进入项目主页,以Httprunner为例。https://github.com/httprunner/httprunner2、点击项目右上角的Fork按钮,把项目克隆到自己......
  • 解决Git报“OpenSSL SSL_read: Connection was reset, errno 10054”错的问题
    1、......
  • 如何重置Gitlab root用户密码
    一、切换到root用户sudosu二、进入gitlab控制台gitlab-railsconsoleproduction三、查找用户对象user=User.where(id:1).first四、重置密码user.passwo......
  • git操作仓库
    一、创建仓库1.创建一个本地仓库(Mycrypto)mkdirMycrypto2.创建Git可管理的仓库在已创建文件夹或已存项目的根目录下命令行中输入gitinit把这个文件夹变成Git可管理的......
  • Github 托管 Hugo
    详情hugo:官网地址Go-lang:官网地址Git:官网地址辅助工具->GithubProxy:官网地址......
  • git上传github
    三个区域:代码所在工程文件夹,在前者之上抽象的本地仓库git,在遥远的远程仓库github/gitee/gitlab等 上传步骤工程文件夹gitbash:gitinit初始化为仓库gitclone......
  • Github TOC生成
    生成Github目录Toc1.利用VSCode【MarkdownAllinOne】插件1.1预览:Ctrl+k后,按下V1.2目录生成安装插件时,要选择Trust,否则在命令行中找不到相关命令在......