原文檔:https://www.jianshu.com/p/ff4f98695c2c
git commit 使用說明
1 概述
git提交推薦使用命令行工具,請嚴格遵循提交格式。
2 提交格式
在您git add后,推薦執行git commit進行提交,如無特殊描述信息要添加,也可以git commit -m
要求提交格式如下:
2.1 type說明
type在commit的是否必須存在。
feat: 添加新特性
fix: 修復bug
docs: 僅僅修改了文檔
style: 僅僅修改了空格、格式縮進、逗號等等,不改變代碼邏輯
refactor: 代碼重構,沒有加新功能或者修復bug
perf: 優化相關,比如提升性能、體驗
test: 增加測試用例
chore: 改變構建流程、或者增加依賴庫、工具等
revert: 回滾到上一個版本
2.2 scope說明
非必填(建議填寫),scope用於說明 commit 影響的范圍,建議填寫影響的功能模塊。
如果你的修改影響了不止一個scope,你可以使用*代替。
2.3 subject說明
必填, commit 目的的簡短描述,不超過50個字符。
以動詞開頭,使用第一人稱現在時,比如change,而不是changed或changes
第一個字母小寫
結尾不加句號
2.4 body說明
非必填(建議填寫),可描述當前修改的行為詳細信息或修改的目的。
2.5 footer說明
非必填,一般用於描述BREAKING CHANGE,在項目開發中一般不需要填寫,組件研發的工程需要填寫。
格式:以BREAKING CHANGE開頭,后面是對變動的描述、以及變動理由和遷移方法。
3 提交方式
如上2所示格式,本質上是改變文件 .git/COMMIT_EDITMSG 中的文本,實際提交過程如下(推薦命令行提交):
3.2 cmd(notepad)
window系統下默認git編輯工具是vim,如無相關基礎,建議使用window默認的文本編輯器(這里不贅述vim相關編輯方法)。
修改git默認文本編輯器: git config core.editor notepad
修改后執行git commit,會彈出文本編輯器。
我們要按照規定的格式在注釋前加入要提交的commit信息:
feat(人員新增): 增加人員批量導入
- 增加批量報盤功能
- 增加人員報盤后結果查詢功能
- 修改人員新增布局
然后保存並關閉,會提示如下信息:
[master 756c07e] feat(人員新增): 增加人員批量導入
1 file changed, 2 insertions(+)
在push完成后,gitlab的commit列表中會有如下信息:
commit.png
3.2 shell(GNU nano)提交方式
在您執行git commit后,命令行會有如下顯示:
projectRoot/.git/COMMIT_EDITMSG
請為您的變更輸入提交說明。以 '#' 開始的行將被忽略,而一個空的提交
說明將會終止提交。
位於分支 master
您的分支與上游分支 'origin/master' 一致。
要提交的變更:
修改: CHANGELOG.md
未跟蹤的文件:
.idea/
[ 已讀取 13 行 ]
^G 求助 ^O 寫入 ^W 搜索 ^K 剪切文字 ^J 對齊 ^C 游標位置
^X 離開 ^R 讀檔 ^\ 替換 ^U 還原剪切 ^T 拼寫檢查 ^_ 跳行
如上所示,我們要按照規定的格式在注釋前加入要提交的commit信息:
feat(人員新增): 增加人員批量導入
- 增加批量報盤功能
- 增加人員報盤后結果查詢功能
- 修改人員新增布局
輸入完成后,根據快捷鍵提示,按ctrl + O,然后出現要修改的MSG文件名,按回車鍵。此時提示如下:
[ 已寫入 19 行 ]
最后按ctrl + X提交完成,提示如下:
[master 756c07e] feat(人員新增): 增加人員批量導入
1 file changed, 2 insertions(+)
在push完成后,gitlab的commit列表中會有如下信息: