背景: 

前端项目为保证代码规范性,会通过husky插件设置了lint-staged,从而对代码在git commit事进行校验。

问题:

如果git commit时遇到代码错误,从而导致代码丢失如何找回?

解决方案:

1. 在Git Bash终端输入下面代码:

git stash list //这条命令的作用是列出当前仓库中所有被暂存(stashed)的变更记录。

此时会输出下面的结果:

stash@{0}:list-staged automatic backup 

2. 继续输入第二条命令:

git stash apply --index stash@{0}  //将指定的暂存变更(这里是 stash@{0})应用回当前工作目录和暂存区。

丢失的代码就可以成功找回

小插曲:

在vscode命令行输入第2条命令,可能会出现下述问题。此时不用怀疑命令出了问题,改用Git Bash终端就可以。(本人是在vscode终端中输入的命令,可以成功找回)

error:unknow switch

usage: git stash apply [--index] [-q|-quiet] [<stash>] 

-q, --quiet     be quiet, only report errors

--index         attempt to recreate the index

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐