Bug: git stash恢复误drop的提交

Bug: git stash恢复误drop的提交

前几天在写ut时突然需要通过本地代码临时出一个包,但是本地ut又不想直接作为一个commit提交,所以为了省事就将ut的代码暂时stash起来。出完包后想apply stash,但是手误操作点成了drop stash,丢失了之前stash的代码。后来通过一顿猛操作摸索,成功恢复丢失的代码。

1 stash本地代码

这是我本地修改的代码,现在我通过goland将它stash起来

选中目录,右键 - git - Stash Changes

为此次stash添加一个备注信息:

create stash成功之后,我们开始的修改就都没了:

2 drop stash

本地出完包后,想要应用之前stash的代码:

  • 选中对应目录 - Git - Unstash Changes

原本我们应该选中之前的stash点击右下角的apply stash,但是由于误操作,点成了右侧的drop,导致之前的stash丢失。

3 恢复之前drop的stash

3.1 通过命令找到之前的stash id

可视化展示git提交信息:git log --graph --decorate --pretty=oneline --abbrev-commit --all $(git fsck --no-reflogs | grep commit | cut -d' ' -f3)

命令行执行下面命令,图形化展示git提交信息:

bash 复制代码
git log --graph --decorate --pretty=oneline --abbrev-commit --all $(git fsck --no-reflogs | grep commit | cut -d' ' -f3)

3.2 git stash apply commitID

在命令行执行下面命令,应用丢失的stash:

bash 复制代码
git stash apply b77f01c
相关推荐
宁静的舞者1 小时前
Git、GitHub、Codeup(云效代码仓库)详解
git·代码仓库·codeup·云效
陈佬昔没带相机2 小时前
Git Worktree: AI 编程 Agent 并行开发的秘密武器
git·agent
栈时没有名字8 小时前
git仓库管理,commit或push上传服务器失败问题
git·嵌入式
金銀銅鐵8 小时前
[git] 如何丢弃对一个文件的改动?
git·后端
专注VB编程开发20年10 小时前
Windows API 所有老式结构体4字节对齐,但是64位VBA,Twinbasic弄成了8字节对齐,大BUG
windows·bug
JAVA面经实录91712 小时前
Java开发工程基础完整手册(企业实战完整版)
java·开发语言·git·ci/cd·svn·github·intellij idea
草履虫君14 小时前
若用wsL方式安装openclaw 就不需要安装win原生的node和git
经验分享·git·ai
手握风云-14 小时前
深入 Git:它是如何记录世界的(一)
git
华科大胡子14 小时前
Git Submodule深度避坑指南
git
花开花落为谁愁16 小时前
Git核心命令速查表
大数据·git·elasticsearch