相信大家都意識到一個問題,前端提交不正確的程式碼部署的會失敗,所以我們一般做團隊建設的時候在commit提交的時候做下校驗,其實就是執行下eslint去做下檔案語法的校驗,那麼怎麼實現的。
在看下面教程前給作者一個關注吧,更多幹貨等你來學習,感謝你的小手點關注哦
前端團隊規範的重要性
第一點:git hooks(鉤子)
首先了解下git的hooks是分客戶端和服務端的,咱們這裡主要介紹的是客戶端的鉤子,客戶端一般常用的包含了pre-commit(預先提交) pre-merge-commit(合併前提交)prepare-commit-msg(準備提交)commit-msg(提交資訊),那麼這些鉤子是怎麼操作的,其實原理很簡單,他們都會對應一個指令碼【存放在。git資料夾下的hooks裡面】
mkdir app //建立資料夾cd app //進入app資料夾git init //初始化本地倉庫cd 。/。git/hooks //進入hooks目錄ls -l //檢視下面檔案,會發現對應的都是咱們hook的名字,// 你會發現後面多了副檔名。sample副檔名,這是為了防止執行防止它們預設被執行
初始化git倉庫
比如你想在git commit 的時候輸出“我喜歡玩hooks來建設團隊”文案怎麼操作呢?
mv pre-commit。sample pre-commit //把字尾名去掉vim pre-commit //編輯這個檔案
在檔案裡面新增輸出咱們文案的程式碼
echo 我喜歡玩hooks來建設團隊
儲存後執行git commit -m ‘測試’試試效果
說到這裡是不是明天了git鉤子其實就是執行的指令碼啊
第二點:eslint
先npm init -y初始化下npm包
npm init -y
安裝下eslint
npm i eslint -S
配置。eslintrc檔案
{ “rules”: { “semi”: [“error”, “always”], “quotes”: [“error”, “double”] }}
package。json裡面配置eslint的執行命令
“lint”: “eslint ——ext 。js 。/”
第三點:
husky
(哈士奇看門狗的意思,守好你的程式碼質量減少損失)
安裝husky 用來在commit之前操作,(這時候我們還原咱們的pre-commit去 把之前的操作暫停使用)
npm i husky -S
安裝後在hooks資料夾下會多了兩個檔案
繼續package。json裡面配置下husky配置
“husky”: { “hooks”: { “pre-commit”: “npm run lint” } }
這樣我們就大功告成了。試試吧小夥伴
這就是在commit的時候語法檢測,是不是很神奇啊,小夥伴,記得關注哦
課外知識:為什麼執行commit的時候就和husky有關係呢?
其實和咱們的第一點有關,就是在pre-commit的時候裡面執行了husky。sh指令碼來看下圖:
這回明白了吧,記得不想落伍,前端也需要學習指令碼的哦