git commit message 規範
阿新 • • 發佈:2021-11-04
Angular提交資訊規範
目前最受開發人員肯定的規範是前端框架Angular提出的Angular提交資訊規範
提交格式:
Commit Message 包含三個部分,分別是Header、Body、Footer
<type>(<scope>): <subject>
<BLANK LINE>
<body>
<BLANK LINE>
<footer>
Angular 規範解讀:
其中,Header (第一行)的資訊是必須的,其他行資訊可以省略;
第一行資料中,type(必選)、scope(可選)、subject(必選),即
其中(<scope>)
(<scope>)
時,其中的()
是不可省略的,<type>(<scope>):
冒號後必須緊跟空格;在實際開發中,為使得 Commit Message 更為易讀;我們往往會限制每行 message 的長度,
常規的限制為 50/72/100 個字元,這裡可根據實際情況選用;
Header 該主題包含對更改的簡潔描述:
使用命令式,現在時:“change”不是“changed”也不是“changes”
不要大寫第一個字母
末尾沒有點 (.)
Body
應包括改變的動機,並將其與以前的行為進行對比。
Footer
應包含有關重大更改的任何資訊,也是引用此提交關閉的 GitHub 問題的地方。
Type
build | 影響構建系統或外部依賴項的更改 |
---|---|
feat | 新增功能 |
fix | Bug修復 |
perf | 程式碼效能優化 |
style | 程式碼格式類的變更,格式美化、空格刪除等 |
refactor | 其他程式碼類的修改,這些變更不屬於 feat、fix、perf 和 style,例如簡化程式碼、重新命名變數、刪除冗餘程式碼等 |
test | 新增測試用例或是更新現有測試用例 |
ci | 持續整合和部署相關的改動,比如修改 Jenkins、GitLab CI 等 CI配置檔案等 |
docs | 文件類修改,使用者文件或開發文件等 |
chore | 其他型別修改,比如構建流程、依賴管理或者輔助工具的變動等 |
簡單理解
程式碼類修改:有4種具有明確變更意圖的型別:feat、fix、perf、style;
如果我們的程式碼不屬於這4類,那程式碼修改都可以歸屬到 refactor 類,即優化程式碼。
簡單版的提交示例
git commit -m "feat: user 鑑權"
git commit -m "fix(user): user 許可權誤判"