最近我配置了一个commit 的husky提交教研功能,可以很好的解决不规范的提交,在提交之前将不好的代码规避掉,但是出现了一个很奇怪的现象,就是当我们提交的时候出现文件有问题的时候文件会自动将所有修改的文件全部消失掉。控制台会报如下错误:

由于问题比较严重,特地搜了半天add过后的文件怎么恢复,尝试了使用
git fsck lost found
然后去.git/lost-found/others目录下就可以找到最近add的文件


挨个查看文件内部的代码后发现里面完全没有我刚刚修改的代码,最终还是没有解决,但是当我读他的错误信息的时候我无意间发现了他有一个的stash单词,于是我打开了git提交日志,发现了确实他运行了操作,也git stash就是将修改代码存储,并恢复修改。

于是我果断运行了git stash pop,文件恢复了很开心!,特此记录,希望有一样遭遇的人可以得到解决。
2023-3-13 更新-----------------

配置husky进行git提交校验时遇到问题,当提交有误时,所有修改的文件会消失。经排查,发现是pre-commit钩子运行了`git stash`保存修改,接着执行eslint修复,若文件在修复过程中被其他进程如vite改变,导致`git stash apply`时出现冲突,使文件看似丢失。解决方法是撤销更改,执行`git stash pop`恢复文件。
最低0.47元/天 解锁文章

被折叠的 条评论
为什么被折叠?



