維護 Changelog
每個團隊的維護策略不一樣, 這篇只是我找來參考用的
https://keepachangelog.com/zh-TW/0.3.0/
版本號定義
- 主版號:當你做了不相容的 API 修改,
- 次版號:當你做了向下相容的功能性新增,
- 修訂號:當你做了向下相容的問題修正。
- 標準的版號「必須 MUST」採用 X.Y.Z 的格式,其中 X、Y 和 Z 為非負的整數,且「禁止 MUST NOT」在數字前方補零。X 是主版號、Y 是次版號、而 Z 為修訂號。每個元素「必須 MUST」以數值來遞增。例如:1.9.1 -> 1.10.0 -> 1.11.0。
- 標記版號的軟體發行後,「禁止 MUST NOT」改變該版本軟體的內容。任何修改都「必須 MUST」以新版本發行。
- 版本編譯資訊「可以 MAY」被標注在修訂版或先行版號之後,先加上一個加號再加上一連串以句點分隔的標識符號來修飾。標識符號「必須 MUST」由 ASCII 的英數字和連接號 [0-9A-Za-z-]組成,且「禁止 MUST NOT」留白。當判斷版本的優先層級時,版本編譯資訊「可 SHOULD」被忽略。因此當兩個版本只有在版本編譯資訊有差別時,屬於相同的優先層級。範例:1.0.0-alpha+001、1.0.0+20130313144700、1.0.0-beta+exp.sha.5114f85。
想法
- 版版修訂號, 可以用
master
的 head 去做編號 - 每個正式 release 的版本號, 都應該下
git tag
- 考慮把最新版的 changelog 寫在
README.md
, 起碼可以知道最近產品的更新狀態