git stash 存放在缓冲区的意思。
大致的用法有这几个命令:
1.git stash / git stash save "message" / git stash save -a "message"(慎用)
2.git stash pop [ stash@{id} ] / git stash apply [ stash@{id} ] apply不删除缓存里的,pop删除即弹出来了就不存在了
3.git stash list 看哪个文件不同
4.git stash show 看文件diff不同
5.git stash clean 清除缓冲区
刚刚手(shou)滑(jian),居然用了git stash save -a 命令!
它会把gitignore里的东西都放进去!!!切回来的时候,告诉你xxx already exists, no checkout Could not restore untracked files from stash
!!!
存在了,那就恢复不了了。
在stackoverflow看到一个解决办法:
1.把项目里exists的东西删除掉,用git clean -f / git clean -fdx命令,基本上都是.gitignore里的东西。删完就好了
2.接下来,可以用:git stash pop stash@{id}命令来进行恢复了。
其他的方法看不懂,什么git stash branch 巴拉巴拉的。这个比较简单。