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
相关推荐
游九尘3 小时前
git只忽略自己本地的文件,其他人的文件正常提交
git
SiYuanFeng4 小时前
新手学Git:以一个小游戏项目为例,完成初始化、提交、查看历史与恢复版本
大数据·git·elasticsearch
rayyy95 小时前
Git 忽略已提交过的文件夹 完整步骤
git
YoseZang5 小时前
【手工】git的使用 - 密钥生成和多账户使用(config文件)
git
韭菜钟5 小时前
Git 代理与内网 Gitea 共存方案(无需 no_proxy)
git·gitea
zhougl9967 小时前
Git 命令速查手册
大数据·git·elasticsearch
小陈同学呦7 小时前
Git Worktree 并行开发实战指南
git·vibecoding
码农小旋风8 小时前
2026 最新 Claude Code Windows 安装教程:Node、Git Bash、命令检查一步步配好
windows·git·bash·claude
ethan.Yin8 小时前
Git_查看已删除文件的历史
git
AI 编程助手GPT8 小时前
【实战】Codex 接管电脑 + Claude Routines 云端值守:一次 Bug 排查的“无人化”闭环
人工智能·gpt·ai·chatgpt·bug