Vue3-基于husky的代码检查工作流

news2024/9/28 5:34:15

husky是一个git hooks工具(git的钩子工具,可以在特定时机执行特定的命令)

代码检查

背景:想要使代码上传到git仓库前进行代码检查,所以提前下载好git

打开项目终端,点击右上角选择进入Git Bash控制

1.如果当前项目没有被git进行管理,就需要先初始化git仓库,执行git init即可;如果不初始化直接进行husky处理肯定是不行的

git init

2.初始化husky工具配置

官网:https://typicode.github.io/husky/

pnpm dlx husky-init&&pnpm install

配置成功后,会出现.husky文件,可以点进pre-commit文件查看

3.修改.husky/pre-commit文件

将npm test修改为pnpm lint,只要一提交代码就会触发这个pnpm lint(代码校验)

如果项目中有代码不符合规范,在提交到仓库时就会有报错提示

问题:pnpm lint是全量检查,耗时问题(文件量大时),历史问题(前期代码并没有使用规范)

暂存区eslint校验(解决上面问题,企业级项目更常用)

只用对自己写的代码负责

1.安装lint-staged包

pnpm i lint-staged -D

 

2.package.json配置lint-staged命令

在图中红色区域里添加如下代码:

  "lint-staged": {
    "*.{js,ts,vue}": [
      "eslint --fix"
    ]
  }
"lint-staged": "lint-staged"

3..husky/pre-commit文件修改

将pnpm lint修改为pnpm lint-staged

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1262524.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

牛客 算法题 golang语言实现

题目 HJ101 输入整型数组和排序标识,对其元素按照升序或降序进行排序 描述 输入整型数组和排序标识,对其元素按照升序或降序进行排序数据范围: 1 ≤ � ≤ 10001≤n≤1000 ,元素大小满足 0 ≤ � &#…

同为科技(TOWE)工业级炫彩桌面PDU让你的桌面更整洁

在当今社会,人们越来越注重生活品质与工作效率,桌面PDU插座是安全便捷的桌面电源设备,兼顾了工业机柜PDU功能、输出方式多样化与C端电气设备高颜值、实用性的特点,可满足消费者日常多方位用电需求。同为科技(TOWE&…

应用密码学期末复习(1)

学习资料 应用密码学总结_应用密码学知识点总结-CSDN博客 应用密码学期末复习知识点总结_5的36次方mod97__PriDe的博客-CSDN博客 【密码学】密码学期末考试速成课,不挂科!!#高数帮_哔哩哔哩_bilibili 目录 学习资料 第一章 概述 1.1信息…

vue2通过权限控制tab标签显示和隐藏

vue2通过权限控制tab标签显示和隐藏 1、前言2、v-if实现自定义控制 1、前言 在开发过程中,我们可能会遇到这样一个场景:根据不同权限对tab栏内容进行控制,这时候用自定义指令v-permission就达不到我们想要的效果,其是将当前节点的…

FinOps和DevOps的未来会怎样?

FinOps(或财务运营)是一种文化实践,它将财务责任引入云的可变支出模型。这是一种将系统、最佳实践和文化相结合的战略方法,可提高组织了解云成本并做出明智决策的能力。 本质上,FinOps 是一个管理云运营费用&#xff…

①实现基于session的登录流程:发送验证码、登录注册、校验登陆状态

个人简介:Java领域优质创作者;阿里云技术博主、星级博主、专家博主;正在Java学习的路上摸爬滚打,记录学习的过程~ 个人主页:.29.的博客 学习社区:进去逛一逛~ 登录功能 实现 实现基于session的登录流程&…

「阿里巴巴」裁撤量子实验室!

据内部消息,阿里巴巴达摩院由于预算及盈利等原因,已经撤裁旗下量子实验室。此次,共计裁减30余人。 达摩院官网已撤下量子实验室的相关介绍页面。上图:早先关于量子实验室的相关介绍;下图:现在达摩院官网“实…

招标采购软件如何让采购变得更轻松?

企业总是希望让采购流程更简单,选择更好的供应商,花更少的钱。采购软件的普及使原材料和服务的采购变得更容易,向供应商(甚至是全球供应商)索取信息的流程已大大简化。包括招标采购软件在内的采购技术已成为企业运营不…

11.Spring源码解析-beans解析

很明显又调用回来了,是典型的递归调用

璞华大数据产品入选中国信通院“铸基计划”

武汉璞华大数据技术有限公司HawkEye设备数字化管理平台产品,凭借优秀的产品技术能力,通过评估后,入选中国信通院“铸基计划”《高质量数字化转型产品及服务全景图(2023)》的工业数字化领域。 “铸基计划”是中国信通院…

MySQL数据库入门到大牛_基础_17_触发器

文章目录 1. 触发器概述2. 触发器的创建2.1 创建触发器语法2.2 代码举例 3. 查看、删除触发器3.1 查看触发器3.2 删除触发器 4. 触发器的优缺点4.1 优点4.2 缺点4.3 注意点 5. 第十七章练习 在实际开发中,我们经常会遇到这样的情况:有 2 个或者多个相互关…

文章采集器-免费的文章采集工具大全

在当今信息爆炸的时代,获取有效的信息变得尤为关键。随之而来的问题是,如何高效地从海量信息中筛选出我们所需的内容呢?文章采集器应运而生,它就像是信息世界中的一把神奇的筛子,能够帮助我们从大海一般的信息中捞取我…

linux 内核线程

内核线程类似于用户进程,通常用于并发处理些工作,它是一种在内核空间实现后台任务的方式,并且可以参与时间片轮转调度。 内核线程可以进行繁忙的异步事件处理,也可以睡眠等待某事件的发生,内核线程可以访问内核函数和…

【hive-design】hive架构详解:描述了hive架构,hive主要组件的作用、hsql在hive执行过程中的底层细节、hive各组件作用

文章目录 一. Hive Architecture二. Metastore1. Metastore Architecture2. Metastore Interface 三. Compiler四. hive架构小结 本文主要讨论了 描述了hive架构,hive主要组件的作用详细描述了hsql在hive执行过程中的底层细节描述了hive各组件作用 一. Hive Archite…

Authing CEO 谢扬来信 |我的原则

从忙碌的工作中短暂抽身,有很多感想,不吐不快,借此机会,倾我所有,诉我原则。 原则一:坚强信念,坚定意志 商人大多「无利不起早」,而创业者的反馈周期比商人长非常非常多。 相比「商品…

微服务知识大杂烩

1.什么是微服务? 微服务(Microservices)是一种软件架构风格,将一个大型应用程序划分为一组小型、自治且松耦合的服务。每个微服务负责执行特定的业务功能,并通过轻量级通信机制(如HTTP)相互协作。每个微服务可以独立开发、部署和扩展,使得应用程序更加灵活、可伸缩和可…

认证授权常见方式

认证授权 认证 (Authentication) 和授权 (Authorization)的区别是什么? 说简单点就是: 认证 (Authentication): 你是谁。授权 (Authorization): 你有权限干什么。 稍微正式点(啰嗦点)的说法就是&#x…

15亿元!类ChatGPT平台AI21 Labs,获巨额融资

著名生成式AI平台AI21 Labs在官网宣布,获得2.08亿美元(约15亿元)C系列融资,估值14亿美元(约100亿)。 本次由英特尔旗下风投机构、康卡斯特旗下风投机构、现有投资者Ahren Innovation Capital等联合投资&am…

使用Zoho Projects项目管理系统进行研发排期的策略与方法

研发排期旨在有序地填充待开发的就绪队列,明确最近的发布计划,让准备就绪的需求如行云流水般进入开发阶段。 使用Zoho Projects项目管理系统进行研发排期的步骤如下: 1.创建项目: 登录Zoho Projects账户,创建一个新项…