You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

执行git stash后如何找回WIP?如何恢复至工作状态B?

解决方案

首先明确:Git stash不会覆盖之前的stash记录,每次stash都会新增一条独立记录,采用栈结构存储(最后执行的stash在最顶端)。你第二次stash保存的是状态B,第一次是状态A,两者互不影响。

你执行git stash pop后,状态B本应恢复到工作区,同时这条stash记录被删除。如果当前工作区不是状态B,可能是恢复时出现冲突或误操作,可通过以下步骤找回:

  • 步骤1:查看所有可恢复的stash记录
    执行命令查看包括已pop但未被Git垃圾回收的所有stash历史:

    git stash list --all
    

    你能看到哈希值为5165c71bf07f84a540496032828268c274e3f040的状态B记录。

  • 步骤2:恢复指定的stash记录
    通过哈希值直接恢复状态B,该命令仅恢复内容不删除记录,更安全:

    git stash apply 5165c71bf07f84a540496032828268c274e3f040
    
  • 可选:清理指定stash记录
    确认状态B恢复后,若要删除这条stash记录,执行:

    git stash drop 5165c71bf07f84a540496032828268c274e3f040
    

如果想先查看状态B的具体内容,可执行:

git stash show -p 5165c71bf07f84a540496032828268c274e3f040

内容的提问来源于stack exchange,提问作者Anna Setiva

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.12 01:55:23