Git Commit message(Angular規(guī)范)

Commit message 的格式

<type>(<scope>): <subject>
<BLANK LINE>
<body>
<BLANK LINE>
<footer>

1. Header

Header部分只有一行赋朦,包括三個字段:type(必需)、scope(可選)和subject(必需)李破。

1.1 type

type用于說明commit 的類別宠哄,只允許使用下面12個標(biāo)識。

  • feat:新功能(feature)
  • fix:修補bug
  • improvement: An improvement to a current feature
  • docs:文檔(documentation)
  • style: 格式(不影響代碼運行的變動)
  • refactor:重構(gòu)(即不是新增功能嗤攻,也不是修改bug的代碼變動)
  • perf: A code change that improves performance
  • test:增加測試
  • build: Changes that affect the build system or external dependencies (example scopes: gulp, broccoli, npm)
  • ci: Changes to our CI configuration files and scripts (example scopes: Travis, Circle, BrowserStack, SauceLabs)
  • chore: Other changes that don't modify src or test files
  • revert: Reverts a previous commit

1.2 scope

scope用于說明 commit 影響的范圍毛嫉,比如數(shù)據(jù)層、控制層妇菱、視圖層等等承粤,視項目不同而不同。

1.3 subject

subject是 commit 目的的簡短描述闯团,不超過50個字符密任。
以動詞開頭,使用第一人稱現(xiàn)在時偷俭,比如change浪讳,而不是changed或changes
第一個字母小寫
結(jié)尾不加句號(.)

1.4 Body

Body 部分是對本次 commit 的詳細描述,可以分成多行涌萤。 有兩個注意點:

  • 使用第一人稱現(xiàn)在時淹遵,比如使用change而不是changed或changes。

  • 應(yīng)該說明代碼變動的動機负溪,以及與以前行為的對比透揣。

1.5 Footer

Footer 部分只用于兩種情況:

  • 不兼容變動

如果當(dāng)前代碼與上一個版本不兼容,則 Footer 部分以BREAKING CHANGE開頭川抡,后面是對變動的描述辐真、以及變動理由和遷移方法。

  • 關(guān)閉Issue

如果當(dāng)前commit針對某個issue崖堤,那么可以在Footer部分關(guān)閉這個issue 侍咱。
Closes #234
也可以一次關(guān)閉多個issue:
sCloses #123, #245, #992

工具

1. Commitizen

npm install -g commitizen

然后,在項目目錄里密幔,運行下面的命令楔脯,使其支持 Angular 的 Commit message 格式。

commitizen init cz-conventional-changelog --save --save-exact

以后胯甩,凡是用到git commit命令昧廷,一律改為使用git cz堪嫂。這時,就會出現(xiàn)選項木柬,用來生成符合格式的 Commit message皆串。

2. validate-commit-msg

npm install -g validate-commit-msg

3. husky

npm install -g husky

添加配置到package.json, 如果沒有此文件,在工程目錄執(zhí)行命令

npm init
{
  "husky": {
    "hooks": {
      "commit-msg": "validate-commit-msg"
    }
  }
}
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末眉枕,一起剝皮案震驚了整個濱河市愚战,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌齐遵,老刑警劉巖寂玲,帶你破解...
    沈念sama閱讀 206,602評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異梗摇,居然都是意外死亡拓哟,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,442評論 2 382
  • 文/潘曉璐 我一進店門伶授,熙熙樓的掌柜王于貴愁眉苦臉地迎上來断序,“玉大人,你說我怎么就攤上這事糜烹∥ナ” “怎么了?”我有些...
    開封第一講書人閱讀 152,878評論 0 344
  • 文/不壞的土叔 我叫張陵疮蹦,是天一觀的道長诸迟。 經(jīng)常有香客問我,道長愕乎,這世上最難降的妖魔是什么阵苇? 我笑而不...
    開封第一講書人閱讀 55,306評論 1 279
  • 正文 為了忘掉前任,我火速辦了婚禮感论,結(jié)果婚禮上绅项,老公的妹妹穿的比我還像新娘。我一直安慰自己比肄,他們只是感情好快耿,可當(dāng)我...
    茶點故事閱讀 64,330評論 5 373
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著芳绩,像睡著了一般掀亥。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上示括,一...
    開封第一講書人閱讀 49,071評論 1 285
  • 那天铺浇,我揣著相機與錄音,去河邊找鬼垛膝。 笑死鳍侣,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的吼拥。 我是一名探鬼主播倚聚,決...
    沈念sama閱讀 38,382評論 3 400
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼凿可!你這毒婦竟也來了惑折?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,006評論 0 259
  • 序言:老撾萬榮一對情侶失蹤枯跑,失蹤者是張志新(化名)和其女友劉穎惨驶,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體敛助,經(jīng)...
    沈念sama閱讀 43,512評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡粗卜,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 35,965評論 2 325
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了纳击。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片续扔。...
    茶點故事閱讀 38,094評論 1 333
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖焕数,靈堂內(nèi)的尸體忽然破棺而出纱昧,到底是詐尸還是另有隱情,我是刑警寧澤堡赔,帶...
    沈念sama閱讀 33,732評論 4 323
  • 正文 年R本政府宣布识脆,位于F島的核電站,受9級特大地震影響善已,放射性物質(zhì)發(fā)生泄漏存璃。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 39,283評論 3 307
  • 文/蒙蒙 一雕拼、第九天 我趴在偏房一處隱蔽的房頂上張望纵东。 院中可真熱鬧,春花似錦啥寇、人聲如沸偎球。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,286評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽衰絮。三九已至,卻和暖如春磷醋,著一層夾襖步出監(jiān)牢的瞬間猫牡,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,512評論 1 262
  • 我被黑心中介騙來泰國打工邓线, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留淌友,地道東北人煌恢。 一個月前我還...
    沈念sama閱讀 45,536評論 2 354
  • 正文 我出身青樓,卻偏偏與公主長得像震庭,于是被迫代替她去往敵國和親瑰抵。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 42,828評論 2 345

推薦閱讀更多精彩內(nèi)容