iT邦幫忙

第 11 屆 iThome 鐵人賽

DAY 19
1
Software Development

模組化設計系列 第 19

Day19 - lerna.js 自動產生 changelog

  • 分享至 

  • xImage
  •  

自動產生 changelog

lerna.js 具有自動產生 changelog 的功能,運作邏輯說起來也沒有太神奇,基本上就是你在做 git commit 時,會留下送交的註解,只要註解符合 Conventional Commits 規範,它就可以自動辨識哪些資訊應該被寫入 changelog 之中,就可以產生像下圖這種精美的 change log。

資料來源: https://github.com/lerna/lerna/blob/master/CHANGELOG.md

commit 前置詞的規則

實作新的功能 (feature)

  • 使用 feat 前置詞
git commit -m 'feat: 實作註冊的 API'

零星工作雜事

  • 使用 chore 前置詞

新增或修改文件

  • 使用 docs 前置詞
git commit -m 'docs: correct spelling of CHANGELOG'

修 BUG

  • 使用 fix 前置詞
git commit -m 'fix: correct minor typos in code'

資料來源: https://conventionalcommits.org/

自動判斷如果跳版號

使用 commit 前置詞的好處,不只有自動建立 changelog 而已,它還有助於 lerna 幫你自動判斷子模組要升小版號,還是大版號。

互動模式

lerna version

指定一律照 patch 規則來升版號

lerna version patch

指定一律照 minor 規則來升版號

lerna version minor

指定一律照 major 規則來升版號

lerna version major

觸發升版號的事件,並且自動產生 changelog

lerna version --conventional-commits

上一篇
Day18 - lerna.js 基本操作
下一篇
Day20 - lerna.js 其他實用指令
系列文
模組化設計30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言