git reset --hard 需要保留的修改没了怎么办?git fsck --lost-found
git reset --hard 也有还能拯救的情况,兄弟稳住别慌,看我能救你不?1.如果你没git commit 也没git add,那就彻底完犊子了。(卧槽,兄弟,给你狂的,不明白咋回事你都敢git reset --hard ,你真的疯了)1.git commit后执行的git reset --hard :此时 git reflog 能找到本地仓库的操作日志,再次git reset --har
·
git reset --hard 也有还能拯救的情况,兄弟稳住别慌,看我能救你不?
1.git commit后执行的 git reset --hard :此时 git reflog 能找到本地仓库的操作日志,再次git reset --hard [HEAD或者前面的id都可以] ,此时可以理解为原路返回上次git reset --hard 那一步之前了,然后重新来;
例如:git reset --hard HEAD@{1} ---------PS:我用的远程仓库是Grrit,应该都是一样的;
2.git add了,但是没commit 这下蛋蛋微疼,因为没有直接的日志或者操作记录,git没有还原依据了,所以要自己去创造:直接在命令行执行:git fsck --lost-found 然后打开.git文件夹=>lost-found文件夹=>other文件夹,
这些没有名字的文件(blob文件)就是你git reset --hard 清掉的 git add 的文件,名字变了 但是里面的代码是没有改变的,(有人说git merge/rebase可以还原,如果能当然最好不过,不过本人亲测无效)你要做的就是逐个把文件查看,改名字放到原来的位置(不要慌,用vs-code打开检查文件依赖关系,就不会错了;玩丢的文件个数少一点还好,多了就惨了,这可是大实话!!!!!!)
以下情况基本可以直接判加班重写了:
1.如果你没git commit 也没git add,那就彻底完犊子了。(卧槽,兄弟,给你狂的,不明白咋回事你都敢git reset --hard ,你真的疯了!!!)
更多推荐
已为社区贡献1条内容
所有评论(0)