[Git] Conventional Commits 規範性提交

什麼是 Conventional Commits?

Conventional Commits 是一種對 Git commit 訊息的格式化慣例,旨在提供一組清晰的規則,使得提交的歷史更容易被理解,並且可以自動生成如更新日誌或者版本號。

Conventional Commits 的結構

一個 Conventional Commit 訊息由三部分組成:類型、主題和可選的正文。

  • 類型:這是 commit 的類型,例如
    • feat(新功能):新增一個新功能。例如:feat: add search functionality
    • fix(修復 bug):修復一個 bug。例如:fix: correct typo in login screen
    • docs(文檔變更):只改變了文件。例如:docs: update README with project setup instructions
    • style(不影響代碼邏輯的變更,如格式化):不影響代碼運行的變動 (空白、格式化等)。例如:style: format code with prettier
    • refactor(重構代碼):既不是修復 bug 也不是添加新功能的代碼變動。例如:refactor: simplify API request logic
    • perf(性能優化):提高代碼性能的變動。例如:perf: improve login page load time
    • test(添加或修改測試):添加或修改測試。例如:test: add unit test for login function
    • chore(對構建過程或輔助工具的變更):對構建過程或輔助工具和庫的變動。例如:chore: update project dependencies
  • 主題:這是一個簡短、清晰的描述,說明 commit 做了什麼。
  • 正文(可選):如果需要,可以提供更詳細的說明。這裡可以解釋為什麼進行這些變更,這些變更的具體影響,以及任何可能的副作用。

結語

Conventional Commits 提供了一種統一的方式來撰寫 commit 訊息,使得其他開發者更容易理解 commit 的目的,並且可以利用工具自動生成更新日誌或者確定版本號。希望這篇文章能幫助你理解並開始使用 Conventional Commits。