參考資料:
英文 - https://www.conventionalcommits.org/en/v1.0.0/
中文 - https://www.conventionalcommits.org/zh-hant/v1.0.0/
格式:
<type>[optional scope]: <description>
[optional body]
[optional footer(s)]
主要組件
type
(必填)
表示提交的類型:feat: 新功能
fix: 修復問題
docs: 文件更新
style: 格式(非代碼邏輯的變更,如空格、格式化)
refactor: 重構(既不是新增功能也不是修復問題)
test: 增加測試
chore: 更改建置工具或其他雜項維護
perf: 性能優化
ci: 持續整合相關變更
scope
(可選)
說明變更的影響範圍(如模組名稱、功能)。description
(必填)
簡短描述變更內容。body
(可選)
更詳細的變更描述。footer
(可選)通常用於關閉 Issue(例如
Closes #123
)。或者寫明破壞性變更(如
BREAKING CHANGE: 描述破壞性變更
)。
範例:
- 新增功能
git commit -m "feat(auth): add login functionality"
- 修復問題
git commit -m "fix(api): correct response format for user endpoint"
- 文件更新
git commit -m "docs(readme): update installation guide"
- 性能優化
git commit -m "perf(image): optimize image loading for faster page speed"
- 重構代碼
git commit -m "refactor(profile): simplify profile data fetching logic"
- 破壞性變更
git commit -m "feat(router): introduce new routing system
BREAKING CHANGE: the old routing system is deprecated"
- 關閉 Issue
git commit -m "fix(login): resolve login timeout issue
Closes #123"
完整提交範例
git commit -m "feat(cart): add ability to remove items from cart
This feature allows users to remove individual items from their cart.
It also updates the total price dynamically.
Closes #456"