(這段時(shí)間做項(xiàng)目發(fā)現(xiàn)清蚀,多人合作時(shí)或者查看自己修改的以前版本,即使描述很清晰,
一天提交很多版本的情況下苔悦,也要逐一仔細(xì)查看變化,不是很直觀)
下面分享下這兩天用的Commit message 的格式:
1.對(duì)比
before | after | after |
---|---|---|
image
|
image
|
image
|
2.前提:
每次本地代碼改動(dòng)提交到遠(yuǎn)程椎咧,需要注明提交說明玖详,否則不允許提交到遠(yuǎn)程
git commit -m "hello word" // -m: 指定hello word
提交多行信息:
git commit // 跳出文本編輯器,寫多行信息
3.commit message 格式
每次提交勤讽,包括三個(gè)部分: header, body, footer
<type>(<scope>): <subject> // 必須
<body> // 可省略
<footer> // 可省略
解釋:
type: 提交類別(下面基本會(huì)覆蓋提交代碼所需蟋座,建議只出現(xiàn)下面7種類別,多了會(huì)更亂)
feat:新功能(feature)
fix:修補(bǔ)bug
docs:文檔(documentation)
style: 格式(不影響代碼運(yùn)行的變動(dòng))
refactor:重構(gòu)(即不是新增功能脚牍,也不是修改bug的代碼變動(dòng))
test:增加測(cè)試
chore:構(gòu)建過程或輔助工具的變動(dòng)
scope:影響范圍(可不寫)
subject:對(duì)改變的正常描述向臀,最好以動(dòng)詞開頭語(盡量詳細(xì),必填)
body:詳細(xì)描述(個(gè)人認(rèn)為沒必要诸狭,可不寫)
footer:修改不兼容變動(dòng)以及關(guān)閉 Issue時(shí)(個(gè)人認(rèn)為沒必要券膀,可不寫)
4.撰寫合格 Commit message 的工具----Commitizen
安裝:
npm install -g commitizen
在項(xiàng)目目錄里運(yùn)行
commitizen init cz-conventional-changelog --save --save-exact
END: 以后凡是用git commit命令 就換成 git cz
這樣會(huì)自動(dòng)提示以上幾個(gè)類別
5.建議不必安裝Commitizen工具,自己強(qiáng)制寫幾天就記住這七種類別了作谚,安裝校驗(yàn)反而積累
參考文章:
http://www.ruanyifeng.com/blog/2016/01/commit_message_change_log.html