成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專(zhuān)欄INFORMATION COLUMN

vue,react 配置 commitlint 和 eslint 鉤子

chemzqm / 1943人閱讀

摘要:官網(wǎng)倉(cāng)庫(kù)倉(cāng)庫(kù)中文官網(wǎng)一配置搭配的鉤子后,每次提交版本信息的時(shí)候,會(huì)根據(jù)配置的規(guī)則進(jìn)行校驗(yàn),若不符合規(guī)則會(huì)失敗,并提示相應(yīng)信息。添加字段的配置跳過(guò)校驗(yàn)使用指令可以跳過(guò)檢驗(yàn)規(guī)則代碼規(guī)范強(qiáng)制提交測(cè)試

關(guān)于 commitlint, husky, eslint 的具體信息可以見(jiàn)官網(wǎng)。

commitlint: 官網(wǎng), github 倉(cāng)庫(kù)

husky: github 倉(cāng)庫(kù)

eslint 中文官網(wǎng)

一、配置 commitlint

commitlint 搭配 husky 的 commit message 鉤子后,每次提交 git 版本信息的時(shí)候,會(huì)根據(jù)配置的規(guī)則進(jìn)行校驗(yàn),若不符合規(guī)則會(huì) commit 失敗,并提示相應(yīng)信息。
1. 安裝 commitlint husky 依賴

npm install --save-dev @commitlint/{cli,config-conventional}
npm install --save-dev husky@next  # 安裝最新版,就不用配置 scripts 腳本了

2. 新建 commitlint.config.js 文件

module.exports = {
    extends: ["@commitlint/config-conventional"]
};

commitlint.config.js 配置文件可以添加自己的規(guī)則,這里 @commitlint/config-conventional 提供了官方的規(guī)則擴(kuò)展:

build:主要目的是修改項(xiàng)目構(gòu)建系統(tǒng)(例如 glup,webpack,rollup 的配置等)的提交
ci:主要目的是修改項(xiàng)目繼續(xù)集成流程(例如 Travis,Jenkins,GitLab CI,Circle等)的提交
docs:文檔更新
feat:新增功能
merge:分支合并 Merge branch ? of ?
fix:bug 修復(fù)
perf:性能, 體驗(yàn)優(yōu)化
refactor:重構(gòu)代碼(既沒(méi)有新增功能,也沒(méi)有修復(fù) bug)
style:不影響程序邏輯的代碼修改(修改空白字符,格式縮進(jìn),補(bǔ)全缺失的分號(hào)等,沒(méi)有改變代碼邏輯)
test:新增測(cè)試用例或是更新現(xiàn)有測(cè)試
revert:回滾某個(gè)更早之前的提交
chore:不屬于以上類(lèi)型的其他類(lèi)型

3. 配置 package.json 文件
添加 husky 字段

"husky": {
    "hooks": {
      "commit-msg": "commitlint -e $HUSKY_GIT_PARAMS"
    }
  },

4. 測(cè)試

git add .
git commit -m "foo: this will fail"

配置 eslint 鉤子

添加 husky 的 pre-commit 的鉤子,husky 會(huì)在你每次提交 commit 之前使用 eslint 校驗(yàn)代碼規(guī)范,不符合規(guī)則會(huì)提交失敗會(huì)打印出校驗(yàn)信息。
添加 husky 字段的配置

"husky": {
    "hooks": {
      "commit-msg": "commitlint -e $HUSKY_GIT_PARAMS",
      "pre-commit": "eslint "src/**/*.{js,ts,vue}""
    }
  },

- 跳過(guò)校驗(yàn)
使用 --no-verify 指令可以跳過(guò)檢驗(yàn)規(guī)則

git add . && git commit --no-verify -m "代碼規(guī)范強(qiáng)制提交測(cè)試"

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/96334.html

相關(guān)文章

  • 工程搭建---代碼風(fēng)格統(tǒng)一

    摘要:為此我們需要安裝這個(gè)是用于提交代碼的鉤子函數(shù)安裝完之后,我們就需要在增加運(yùn)行鉤子函數(shù)。等鉤子函數(shù)這樣就簡(jiǎn)單的成功對(duì)代碼進(jìn)行效驗(yàn)了,當(dāng)然這邊更進(jìn)一步的可以使用這個(gè)可以將取得所有被提交的文件依次執(zhí)行寫(xiě)好的任務(wù)。 一個(gè)項(xiàng)目是會(huì)有多個(gè)成員來(lái)開(kāi)發(fā)的,因此統(tǒng)一開(kāi)發(fā)規(guī)范是很有必要的,不然每個(gè)人都有自己的風(fēng)格,同步之后代碼都會(huì)報(bào)錯(cuò)。我這邊是用Vscode編譯器的。 首先用vue-cli3.0創(chuàng)建一個(gè)工...

    levius 評(píng)論0 收藏0
  • Lint Your Code

    摘要:形成良好統(tǒng)一的代碼規(guī)范,有利于提高代碼的可讀性,減少潛在的錯(cuò)誤,便于團(tuán)隊(duì)協(xié)作開(kāi)發(fā)。其中是可選的,如果沒(méi)有則禁用所有規(guī)則,如果有則禁用所有規(guī)則。也可以定義一個(gè)命令同時(shí)運(yùn)行這兩個(gè)命令,我在這里使用了我們定義了在鉤子觸發(fā)時(shí)會(huì)執(zhí)行命令。 形成良好統(tǒng)一的代碼規(guī)范,有利于提高代碼的可讀性,減少潛在的錯(cuò)誤,便于團(tuán)隊(duì)協(xié)作開(kāi)發(fā)。本文簡(jiǎn)單介紹JS、CSS、 Git Commit 的規(guī)范工具及用法。 Lin...

    hidogs 評(píng)論0 收藏0
  • vue控件庫(kù)環(huán)境搭建(1)--統(tǒng)一打包

    摘要:當(dāng)然如果使用的話,使用來(lái)效驗(yàn)提交的代碼最后,需要修改演示環(huán)境在該環(huán)境下創(chuàng)建一個(gè)文件這邊主要和英文版中文版框架庫(kù)框架庫(kù)選擇語(yǔ)言簡(jiǎn)體中文主頁(yè)面配置別名路徑配置別名路徑 背景:為了避免重復(fù)造輪子,很有必要開(kāi)發(fā)一個(gè)通用組件庫(kù),方便重復(fù)利用。本文是采用vue-lic3.0腳手改造而成的,使用vuepress作為演示環(huán)境。 首先通過(guò)vue腳手架生產(chǎn)目錄如下: showImg(https://seg...

    Scorpion 評(píng)論0 收藏0
  • vue控件庫(kù)環(huán)境搭建(1)--統(tǒng)一打包

    摘要:當(dāng)然如果使用的話,使用來(lái)效驗(yàn)提交的代碼最后,需要修改演示環(huán)境在該環(huán)境下創(chuàng)建一個(gè)文件這邊主要和英文版中文版框架庫(kù)框架庫(kù)選擇語(yǔ)言簡(jiǎn)體中文主頁(yè)面配置別名路徑配置別名路徑 背景:為了避免重復(fù)造輪子,很有必要開(kāi)發(fā)一個(gè)通用組件庫(kù),方便重復(fù)利用。本文是采用vue-lic3.0腳手改造而成的,使用vuepress作為演示環(huán)境。 首先通過(guò)vue腳手架生產(chǎn)目錄如下: showImg(https://seg...

    freecode 評(píng)論0 收藏0
  • 前端代碼風(fēng)格自動(dòng)化系列(五)之共同出擊

    摘要:我們?cè)谇懊娴乃钠薪榻B了這些工具,可以完成以最小的代價(jià)在提交到遠(yuǎn)程倉(cāng)庫(kù)前,格式化為統(tǒng)一風(fēng)格的代碼,大家都很熟悉這里就不列舉了。下面舉一個(gè)配置。這里對(duì)于項(xiàng)目里分別做了提交前格式化操作,對(duì)于提交規(guī)范做了校驗(yàn)。 我們?cè)谇懊娴乃钠薪榻B了husky、commitlint、lint-staged、prettier這些工具,可以完成以最小的代價(jià)在Git提交到遠(yuǎn)程倉(cāng)庫(kù)前,格式化為統(tǒng)一風(fēng)格的代碼,es...

    pumpkin9 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<