首页 > 其他分享 >git 通过husky提交代码报错导致代码丢失(只add了未commit的代码)

git 通过husky提交代码报错导致代码丢失(只add了未commit的代码)

时间:2023-08-01 10:26:11浏览次数:45  
标签:files git 代码 报错 commit line txt

项目中使用了eslint,以及lint-staged,在执行git commit 时会触发 git 的 pre-commit 钩子,对代码做一次检查及格式化。由于个别文件中有TS报错,导致commit失败,并抛出了具体文件路径,当我在命令行点击路径时发现新增得文件没了(.ts、.vue、图片),仔细一看引用过这些文件得代码也没了,比如路由表中得代码、新加的接口请求都没有了(心想要哭死,要重写好多了)

一、直接将最近30天内的记录单独提取成一个txt文件到目录下

find .git/objects -type f | xargs ls -lt | sed 30q > file.txt

二、然后通过vscode光标把不要的格式全部删除,保留想要的格式

保留这样的格式 5ed849fb10190b2db704d44e421a5fed00e22949 (切记/要删掉)

三、创建脚本并执行脚本

本地新建 files 文件夹, 否则会报找不到files文件夹导致写入失败
本地创建 build.sh 文件用于写入命令如下

for line in `cat file.txt`
do
        echo "File:${line}"
        git show ${line} > files/${line}.txt
done

四、还原文件

最后一步自己手动找到files 文件夹下的内容去比较,然后在复制进去,虽然麻烦但总比在写一遍好啊

标签:files,git,代码,报错,commit,line,txt
From: https://www.cnblogs.com/dcyd/p/17595695.html

相关文章

  • git help
    See'githelp<command>'toreadaboutaspecificsubcommandMainPorcelainCommandsaddAddfilecontentstotheindexamApplyaseriesofpatchesfromamailboxarchiveCrea......
  • 我的 Git 初始化配置
    安装完Git之后,我们需要做一些基础配置,以便后续开心地开发。以下是我会设置的一些基础配置,仅供大家参考。用户信息要做的第一件事就是设置你的用户名和邮件地址。这一点很重要,因为每一个Git提交都会使用这些信息,它们会写入到你的每一次提交中,不可更改:$gitconfig--global......
  • C# 反序列化报错 XML 文档(1, 2)中有错误:不应有 <xml xmlns=''>
    1.XmlSerializer症状用XmlSerializer进行xml反序列化的时候,程序报错:​不应有<xmlxmlns=''>。​​说明: ​执行当前Web请求期间,出现未经处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。 ​异常详细信息: ​System.InvalidOperatio......
  • git学习笔记(十一):Feature分支
    新旧更迭,不辞旧来迎新。每添加一个新功能,最好新建一个feature分支在上边开发,完成后合并,最后删除这一分支。所以正常操作就是新建分支,进入新分支,编写代码,提交代码,切回主分支,准备合并。如果忽然这个功能不需要了,要如何销毁这一分支呢?直接使用gitbranch-dfeaturea(featurea......
  • 新增员工_代码完善2
           ......
  • 新增员工_代码完善1
           ......
  • 代码随想录算法训练营第五天|力扣242.有效的字母异位词、力扣242.两个数组的交集、力
    哈希表哈希表理论基础哈希表,又称为散列表(HashTable),是根据关键码的值而直接进行访问的数据结构其中,数组就是一张哈希表;表中关键码就是数组的索引下标,然后通过下标直接访问数组中的元素哈希表解决的问题:一般哈希表都是用来快速判断一个元素是否出现在集合中哈希函数:把学生的......
  • 代码随想录算法训练营第三天| LeetCode 242.有效的字母异位词 349. 两个数组的交集
    242.有效的字母异位词    卡哥建议: 这道题目,大家可以感受到数组用来做哈希表给我们带来的遍历之处。    题目链接/文章讲解/视频讲解: https://programmercarl.com/%E5%93%88%E5%B8%8C%E8%A1%A8%E7%90%86%E8%AE%BA%E5%9F%BA%E7%A1%80.html   做题思路:......
  • 设置git可以同时推送gitee和github
    查看当前的远程仓库设置:gitremote-v这会列出你当前配置的远程仓库。你可能会看到类似以下的输出:origin-gitee<gitee仓库地址>(fetch)origin-gitee<gitee仓库地址>(push)新增一个远程仓库 gitremoteaddorigin-github<github仓库地址> 分别推送到不同的仓库git......
  • 新增员工_代码开发
         ......