欧美videos另类精品-欧美videos另类极品-欧美vide-欧美va在线视频-欧美va在线观看-欧美va在线播放免费观看

規范git commit的提交記錄

2020-4-23    seo達人

隨著項目體積的增加,參與到項目中的同學越來越多,每個人都有自己的打 git log 的習慣:

  • 格式 1: add: 添加...
  • 格式 2: [add]: 添加...
  • 格式 3: Add 添加...

為了形成統一的規范,達成共識,從而降低協作開發成本,需要對 git commit 記錄進行規范。

規范 git commit 記錄

規范 git commit 記錄,需要做兩件事情:

  • 通過交互式命令行,自動生成符合指定規范的 commit 記錄
  • 提交記錄后,在 git hooks 中進行 commit 記錄格式檢查
問:既然已經交互式生成了規范記錄,為什么需要在 hooks 進行檢查?

交互式生成 commit 記錄,需要用戶調用自定義的 npm scripts,例如npm run commit。但還是可以直接調用原生 git 命令 git commit 來提交記錄。而檢查是在正式提交前進行的,因此不符合要求的記錄不會生效,需要重新 commit。

調研:交互式 commit log 規范方案

前期調研結果,關于 commit 提示有兩種做法:

  1. 直接使用 commitizen 中常用的 adapter
  2. 根據團隊的需要,自定義 adapter

方法 1 的優缺點:

優點 1: 直接安裝對應的 adapter 即可

優點 2: 無開發成本

缺點 1: 無法定制,不一定滿足團隊需要

方法 2 的優缺點:

優點 1: 可定制,滿足開發需求

優點 2: 單獨成庫,發布 tnpm,作為技術建設

缺點 1: 需要單獨一個倉庫(但開發成本不高)

代碼實現

在實際工作中,發現方法 1 中的常用規范,足夠覆蓋團隊日常開發場景。所以,選擇了方法 1.

step1: 安裝 npm 包

npm i --save-dev commitizen cz-conventional-changelog @commitlint/cli @commitlint/config-conventional husky

添加 package.json 的配置:

"scripts": { "commit": "git-cz" }, "husky": { "hooks": { "commit-msg": "commitlint -E HUSKY_GIT_PARAMS" }
}, "config": { "commitizen": { "path": "./node_modules/cz-conventional-changelog" }
}

在項目根目錄下創建commitlint.config.js

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

使用方法:不再使用git commit -m ...,而是調用npm run commit

<img src="https://tva1.sinaimg.cn/large/006tNbRwly1gbjcfr3xb5j30cw00tjrd.jpg" style="width: 100% !important;"/>

日歷

鏈接

個人資料

藍藍設計的小編 http://m.73404.com.cn

存檔

主站蜘蛛池模板: 成人永久免费福利视频网站 | 日本乱子 | 久见久热 这里只有精品 | 欧美一区二区三区免费观看视频 | 黄瓜视频免费 | 公交车揉捏大乳呻吟喘娇 | 国产精品视频久久久 | 精品国产一级在线观看 | 成人黄色a级片 | 日本大尺度动漫在线观看缘之空 | 97影院伦理| 花核调教 | 成人福利网站含羞草 | 欧美性色黄大片四虎影视 | 亚洲va欧美va国产综合久久 | 免费看全黄特黄毛片 | 日日爽日日操 | 果冻传媒九一制片厂 | 欧美黑人换爱交换乱理伦片 | 国内精品一区二区在线观看 | 欧美精品99久久久久久人 | 国产高清在线不卡 | 变态 另类 国产 亚洲 | 思思玖玖 | 亚洲狠狠综合久久 | 美女沟厕撒尿全过程高清图片 | 国产在线观看色 | 88av视频在线观看 | 精品亚洲麻豆1区2区3区 | 亚洲天堂网2018 | 乌克兰粉嫩摘花第一次 | 欧美日韩精品在线观看 | 九九99九九精彩网站 | 日韩精品视频在线播放 | luan小说| 日本免费一二区 | 亚洲国产精品综合欧美 | 日本福利片国产午夜久久 | 免费观看欧美性一级 | 国产久热香蕉在线观看 | 秋霞啪啪网 |