commit message格式規范


綜合阿里巴巴和高德地圖相關部門已有的規范總結的git commit規范(轉載)

<type>(<scope>): <subject>

type(必須)

用於說明git commit的類別,只允許使用下面的標識。

  1. feat:新功能(feature)。

  2. fix/to:修復bug,可以是QA發現的BUG,也可以是研發自己發現的BUG。

    • fix:產生diff並自動修復此問題。適合於一次提交直接修復問題

    • to:只產生diff不自動修復此問題。適合於多次提交。最終修復問題提交時使用fix

  3. docs:文檔(documentation)。

  4. style:格式(不影響代碼運行的變動)。

  5. refactor:重構(即不是新增功能,也不是修改bug的代碼變動)。

  6. perf:優化相關,比如提升性能、體驗。

  7. test:增加測試。

  8. chore:構建過程或輔助工具的變動。

  9. revert:回滾到上一個版本。

  10. merge:代碼合並。

  11. sync:同步主線或分支的Bug。

scope(可選)

scope用於說明 commit 影響的范圍,比如數據層、控制層、視圖層等等,視項目不同而不同。

例如在Angular,可以是location,browser,compile,compile,rootScope, ngHref,ngClick,ngView等。如果你的修改影響了不止一個scope,你可以使用*代替。

subject(必須)

subject是commit目的的簡短描述,不超過50個字符。

  • 建議使用中文(感覺中國人用中文描述問題能更清楚一些)。
  • 結尾不加句號或其他標點符號。

根據以上規范git commit message將是如下的格式

fix(DAO):用戶查詢缺少username屬性 

feat(Controller):用戶查詢接口開發

這樣規范git commit到底有哪些好處呢?

  • 便於程序員對提交歷史進行追溯,了解發生了什么情況。

  • 一旦約束了commit message,意味着我們將慎重的進行每一次提交,不能再一股腦的把各種各樣的改動都放在一個git commit里面,這樣一來整個代碼改動的歷史也將更加清晰。

  • 格式化的commit message才可以用於自動化輸出Change log。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM