美文网首页
git stash save -a 遇到的坑

git stash save -a 遇到的坑

作者: 我小时候可猛了_ | 来源:发表于2018-06-25 16:33 被阅读251次

    最近使用git stash 的时候 把命令记错了

    原本是: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

    解决办法:

    第一步
    使用如下命令找到所有提交记录
    git log --graph --all --decorate --oneline
    
    找到你git stash save 那次提交的<sha> 
    
    第二步
    git checkout <sha>
    
    第三步
    git reset HEAD~1
    
    第四步
    git stash -u 
    

    好了!

    参考地址:https://stackoverflow.com/questions/12221842/how-to-retrieve-untracked-files-with-git-stash

    相关文章

      网友评论

          本文标题:git stash save -a 遇到的坑

          本文链接:https://www.haomeiwen.com/subject/nsvyyftx.html