跳至主要內容

[git]Git commit 規範

## commit type 類別

- fix:修補 bug (bug fix)
- feat:新增/修改功能 (feature)
- docs:新增/修改文件 (documentation)
- style:格式 (不影響程式碼運行的變動 white-space, formatting, missing semi colons, etc)
- refactor:重構 (既不是新增功能,也不是修補 bug 的程式碼變動)
- perf:改善效能 (A code change that improves performance)
- test:增加/修改測試 (when adding missing tests)
- build:修改影響系統建置或是外部依賴(example scopes: pip, docker, npm)

## commit 結構

# 結構示意
< type>(< scope>): < subject>
( BREAKING CHANGE: )
< footer>

1. < type>:commit 的類別
– 必填
2. < scope>:改動範圍
– 選填
– 以class為主,若異動多支class,可於body再進行詳述
3. < subject>:commit 的簡短描述
– 必填
– 不要超過 50 個字元
– 結尾不要加句號 (. or 。)
4. BREAKING CHANGE:是否為重大改動
– 必填
5. < body>:commit 的詳細描述
– 必填
– 可以分成多行,每一行不要超過 72 個字元
– 如需換行,可使用”|”换行
– 說明程式碼變動的項目與原因,還有與先前行為的對比
6. < footer>
– 選填
– 填寫工單編號
– 前面請加#字號

# 範例
fix(player_entity): 修改建構式
將player dao以依賴注入方式供player entity使用
#123

– *[Git Commit Message 這樣寫會更好,替專案引入規範與範例]
## 自動化工具
– [commitizen](https://github.com/commitizen-tools/commitizen)
## 安裝

sudo pip3 install -U Commitizen

## 使用

# git commit -m 'xxx' 的指令,改成:
cz commit
# 或下面簡潔指令
cz c
# Enter 執行後,依提示完成 commit 提交
分類:git
由 Compete Themes 設計的 Author 佈景主題