git stash recover 恢复

原创文章,转载请注明来源并保留原文链接

git stash 算是经常要用到的了,切换分支的时候常常要先把一些文件给暂存起来。备忘两个问题:

1)git stash 默认不会把untracked files加进去,如果希望把不在版本库的文件也加进去,如何做?

git stash -u

2) git pop 后refs会被dropped掉,我们会看见如下的信息:

Dropped refs/stash@{0} (f798acc46e0838e5c826d177124ab95a73ac92ca)

如何恢复?

很简单,如果我们能得到那串SHA1的值,直接

git stash apply f798acc46e0838e5c826d177124ab95a73ac92ca

如果我们找不到SHA1的值了,可以在git的–lost-found中找到:

git fsck --no-reflog | awk '/dangling commit/ {print $3}'

拿到SHA1的值只要再apply就可以了

http://stackoverflow.com/questions/89332/recover-dropped-stash-in-git

Leave a Reply

Your email address will not be published. Required fields are marked *