代碼提交規(guī)范
type 提交類型(required)
每個(gè)提交都必須使用類型字段前綴瘫絮,它由一個(gè)名詞組成抒蚜,諸如 feat 或 fix 苍鲜,其后接一個(gè)可選的作用域字段兄猩,以及一個(gè)必要的冒號(英文半角)和空格曹阔。
feat:當(dāng)一個(gè)提交為應(yīng)用或類庫實(shí)現(xiàn)了新特性時(shí)半开,必須使用 feat 類型
fix:當(dāng)一個(gè)提交為應(yīng)用修復(fù)了 bug 時(shí),必須使用 fix 類型
docs:只修改了文檔
style:做了不影響代碼含義的修改赃份,空格寂拆、格式化、缺少分號等等
refactor:進(jìn)行代碼重構(gòu)抓韩,既不是修復(fù)bug纠永,也不是新功能的修改
perf:改進(jìn)性能的代碼
test:增加測試或更新已有的測試
chore:構(gòu)建或輔助工具或依賴庫的更新
例如:
feat: 增加年審工單
fix: 修復(fù)運(yùn)維類請款單頁面內(nèi)存泄漏的問題
chore(release): AMS V2.18.0
scope 范圍
作用域字段可以跟隨在類型字段后面。作用域必須是一個(gè)描述某部分代碼的名詞谒拴,并用圓括號包圍尝江,例如: fix(parser)
description 描述(required)
描述字段必須緊接在類型/作用域前綴的空格之后。描述指的是對代碼變更的簡短總結(jié)彪薛,例如: fix: array parsing issue when multiple spaces were contained in string.
body 正文
在簡短描述之后茂装,可以編寫更長的提交正文,為代碼變更提供額外的上下文信息善延。正文必須起始于描述字段結(jié)束的一個(gè)空行后少态。
footer 頁腳注釋
在正文結(jié)束的一個(gè)空行之后,可以編寫一行或多行腳注易遣。腳注必須包含關(guān)于提交的元信息彼妻,例如:關(guān)聯(lián)的合并請求、Reviewer豆茫、破壞性變更侨歉,每條元信息一行。
BREAKING CHANGE 破壞性變更
- 破壞性變更必須標(biāo)示在正文區(qū)域最開始處揩魂,或腳注區(qū)域中某一行的開始幽邓。一個(gè)破壞性變更必須包含大寫的文本 BREAKING CHANGE,后面緊跟冒號和空格火脉。
- 在 BREAKING CHANGE: 之后必須提供描述牵舵,以描述對 API 的變更柒啤。例如: BREAKING CHANGE: environment variables now take precedence over config files.
FAQ
一次提交多種類型怎么操作?
盡可能拆分的task畸颅,每完成一部分就進(jìn)行一次提交担巩,避免一次提交過多的代碼。這樣能夠避免一次commit修改過多文件没炒,導(dǎo)致后續(xù)的維護(hù)涛癌,回退等的困難。
如果真的有這樣的提交送火,可以選擇最重要改動的type拳话,在body部分詳細(xì)寫明具體的改動。