git stash save -a 遇到的坑 , 弹出匿藏错误

情景一: 用命令行的 :

git stash save -u "描述"
git stash save -a "描述"


-u: 会把没有记录到的文件也保存下来(比如你新建了一个文件,但是还没有git add,stash也会把这个文件保存下来)
-a: 会把忽略的文件也保存下来(.gitignore中的)

导致在git stash pop的时候 提示

其他文件提示
XXXX.class already exists, no checkout
最后一行
Could not restore untracked files from stash

 

情景二: 用 TortoiseGit 这个工具的:

可能是不小心点到了匿藏所有 --all,  这个会把那些未受版本控制的文件也匿藏,比如 : .idea, log, .gitignore 等等这些

这样到后面弹出匿藏的时候就会报错: 弹出匿藏错误!

 

解决办法:

第一步
使用如下命令找到所有提交记录
git log --graph --all --decorate --oneline

找到你git stash save 那次提交的<sha> 

第二步
git checkout <sha>

第三步
git reset HEAD~1

第四步
git stash -u 

 

 



posted @ 2019-07-04 16:37  一粒小米-博客  阅读(1361)  评论(0编辑  收藏  举报