误在master分支执行git stash apply,如何撤销并恢复变更到本地分支
问题解决操作指南
首先明确核心前提:git stash apply 只是将暂存内容应用到当前工作区,不会删除原始的stash存储条目,你之前暂存的变更依然完整保存在本地stash列表中,不会丢失。
步骤1:清理master分支上误应用的变更
确认当前处于master分支,且除了误apply的stash内容外,没有其他需要保留的未提交修改,执行重置命令恢复master到干净状态:
git reset --hard HEAD
特殊情况说明:如果你在误apply后已经在master上做了其他需要保留的修改,可执行
git stash push -m "temp master changes"临时暂存master上的所有变更,后续切换回master时重新apply该条临时stash即可。
步骤2:切换回原本地分支
将命令中的myCurrentBranch替换为你自己的原本地分支名后执行:
git checkout myCurrentBranch
步骤3:恢复暂存的变更到原分支
git stash apply stash@{0}
确认变更恢复正常且无误后,可按需删除对应的stash存储条目:
git stash drop stash@{0}
内容的提问来源于stack exchange,提问作者manishk
相关产品推荐
相关产品推荐

