一套自用的git提交規范,可清晰的識別到關聯的任務/bug

分享一套自用的git提交規范,可清晰的識別到關聯的任務/bug

一、提交信息的基本結構

推薦使用約定式提交的一種變體,結構如下:

<類型>(<范圍>): <主題> [#<禪道-ID>]<正文>(可選)<腳注>(可選)

一個完整的、優秀的示例:

feat(用戶模塊): 增加用戶手機號綁定功能 [#12345]- 新增手機號驗證接口(/api/user/bind_mobile)
- 用戶表增加 mobile 和 mobile_verified 字段
- 添加發送短信驗證碼的功能關聯禪道需求: http://your-zentao-domain/zentao/story-view-12345.html

二、核心組成部分詳解

1. 類型 (Type) - 必選

表示本次提交的意圖。以下是類型定義:

類型關鍵字含義適用場景禪道關聯
feat新功能開發新的需求、功能關聯 需求ID (如 #123
)
fix修復Bug修復測試提出的或已知的Bug關聯 BugID (如 #456
)
docs文檔更新修改文檔(如README、接口文檔),不涉及代碼可關聯需求/BugID,或無
style代碼樣式調整代碼格式、縮進、分號等(不改變邏輯)通常無關聯
refactor代碼重構重構代碼,既非修Bug也非加功能可關聯需求ID(如性能優化需求)
test測試相關增加或修改測試用例可關聯需求/BugID
chore雜項事務構建流程、依賴管理、工具腳本(如webpack配置)通常無關聯
2. 范圍 (Scope) - 可選

用括號括起來,說明提交影響的范圍。這有助于快速定位變更。

  • 例如: 用戶模塊訂單模塊登錄頁API數據庫等。
  • 如果修改范圍很雜或難以概括,可以省略 (scope)
3. 主題 (Subject) - 必選

對本次提交的簡短描述,不超過50個字符。

  • 要求:
    • 使用祈使句、現在時態(如"增加",“修復”,“更新”,不要用"增加了",“修復了”)。
    • 首字母不要大寫。
    • 結尾不要加句號。
4. 禪道 ID - 強烈推薦

這是與禪道聯動的關鍵!使用 # + ID 的形式。

  • 格式: [#12345]
  • 位置: 通常放在主題的末尾。
  • 作用: 很多工具(如GitLab, Jenkins)可以自動解析這個格式,生成超鏈接。即使不能,也極其便于人工搜索。
5. 正文 (Body) - 可選

在主題之后空一行,編寫更詳細的說明。

  • 寫什么:
    • 提交的動機:為什么要這樣修改?
    • 與之前行為的對比:修改了什么?是怎么實現的?
    • 需要注意的** breaking changes **(不兼容的變動)。
  • 格式: 每行不超過72字符,使用空格縮進的列表項會讓閱讀更清晰。
6. 腳注 (Footer) - 可選

通常用于放置不兼容的變動(以 BREAKING CHANGE: 開頭)或關閉Issue(如 Closes #123, #245)。在你的場景下,可以放禪道需求的完整URL。

三、具體示例

示例1:完成一個需求

禪道需求: ID 為 10086,標題是“【用戶中心】需要支持修改頭像功能”

feat(用戶中心): 支持用戶上傳和裁剪頭像 [#10086]- 新增頭像上傳接口 POST /api/user/avatar
- 新增圖片裁剪組件(基于Cropper.js)
- 用戶表增加 avatar_url 字段存儲頭像地址See: http://zed.xxx.com/zentao/story-view-10086.html
示例2:修復一個Bug

禪道Bug: ID 為 50020,標題是“商品詳情頁加入購物車按鈕點擊無效”

fix(商品頁): 修復加入購物車按鈕點擊無效的問題 [#50020]修復了因事件綁定函數名錯誤導致點擊無效的問題,將 `addToCart` 更正為 `addToCart`See: http://zed.xxx.com/zentao/bug-view-50020.html
示例3:處理多個任務(一次提交解決一個需求和一個Bug)
feat(訂單): 增加訂單導出為Excel的功能 [#10010]
fix(訂單): 修復導出列表時間顯示錯誤的問題 [#50015]- 新增 POI 依賴用于生成 Excel
- 修復時區轉換工具類的一個邏輯錯誤

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/96249.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/96249.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/96249.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

從音頻到文本實現高精度離線語音識別

會議頻繁&#xff0c;記錄繁瑣&#xff1f;語音轉換成文字工具價格高昂&#xff0c;自己手動整理又耗時費力&#xff1f; 它支持本地離線運行&#xff0c;無需聯網&#xff0c;所有數據留在本地&#xff0c;隱私安全毫無顧慮&#xff0c;同時它的功能是實時語音轉文字&#xf…

SpringMVC 工作原理

SpringMVC 工作原理 SpringMVC 是 Spring 框架中用于構建 Web 應用的核心模塊&#xff0c;其工作流程圍繞 “前端控制器&#xff08;DispatcherServlet&#xff09;” 展開&#xff0c;通過組件間的協作完成請求處理與響應。理解其工作原理是掌握 SpringMVC 開發的關鍵&#xf…

HoRain云--Python機器學習神器:Sklearn全解析

&#x1f3ac; HoRain云小助手&#xff1a;個人主頁 &#x1f525; 個人專欄: 《Linux 系列教程》《c語言教程》 ??生活的理想&#xff0c;就是為了理想的生活! ?? 推薦 前些天發現了一個超棒的服務器購買網站&#xff0c;性價比超高&#xff0c;大內存超劃算&#xff01;…

瘋狂星期四文案網第64天運營日記

網站運營第64天&#xff0c;點擊觀站&#xff1a; 瘋狂星期四 crazy-thursday.com 全網最全的瘋狂星期四文案網站 運營報告 今日訪問量 今日搜索引擎收錄情況

設計一個 AB 測試平臺

1. 需求明確化 功能需求實驗管理 創建、編輯、刪除、復制實驗設置實驗參數&#xff08;變體、權重、目標指標、時長等&#xff09;實驗狀態管理&#xff08;草稿、運行中、已結束&#xff09;用戶分流與分配 支持多種分流策略&#xff08;隨機分配、分層分配、定向分配&#xf…

HiCMAE 論文復現:基于 RAVDESS 數據集的音視頻情感識別

HiCMAE 論文復現:基于 RAVDESS 數據集的音視頻情感識別 1. 項目背景與論文概述 1.1 多模態情感識別背景 多模態情感識別是人工智能領域的重要研究方向,旨在通過結合多種感知模態(如音頻、視頻、文本等)來更準確地識別人類情感狀態。與傳統單模態方法相比,多模態方法能夠…

HarmonyOS 數據處理性能優化:算法 + 異步 + 分布式實戰

摘要 不管是寫 App&#xff0c;還是做 IoT 設備開發&#xff0c;數據處理都是繞不開的主題。你可能要處理幾百條傳感器數據&#xff0c;也可能要應對幾十萬條用戶行為日志。如果算法不夠高效&#xff0c;應用就會卡頓甚至直接崩潰。尤其是在 HarmonyOS&#xff08;鴻蒙系統&…

華為麒麟操作系統運維常見知識點

1.開放root賬號密碼登錄。(1)修改/etc/ssh/sshd_config文件中&#xff0c;PermitRootLogin 屬性值為yes。PermitRootLogin yes(2)使用passwd命令設置root密碼。sudo su 切換到root賬戶下&#xff0c;使用passwd 設置密碼。(3)重啟sshd服務。systemctl restart sshd2.避免使用ch…

嵌入式面試|MCU+RTOS技術棧——面試八股文整理3:STM32

目錄 1.單片機啟動流程 2.看門狗 3.最小系統 4.ROM、RAM、Flash 5.EPROM、EEPROM 6.Bootloader與OTA 7.NAND FLASH 和NOR FLASH 相同點 區別 適用場景 8.CPU、MPU、MCU、SOC、SOPC 9.交叉編譯 10.寄存器 寄存器的作用 寄存器與內存的區別 11.Cortex-M3寄存器組…

用 Wisdom SSH 輕松實現服務器自動化任務調度

用Wisdom SSH輕松實現服務器自動化任務調度 在服務器管理工作中&#xff0c;自動化任務調度至關重要&#xff0c;它能讓系統在特定時間自動執行預設任務&#xff0c;極大提升運維效率。Wisdom SSH作為一款具備AI助手的強大工具&#xff0c;為自動化任務調度帶來便捷解決方案。 …

遠場學習_FDTD_dipole(1)

項目4.4 Reflection calculation using a dipole source在此頁面中&#xff0c;我們采用了一種不同于標準平面波源方法的替代模擬設置&#xff0c;使用偶極子源來計算多層堆疊結構的反射。在此情況下&#xff0c;我們使用空氣 - 玻璃界面。這種技術很有吸引力&#xff0c;因為它…

機器學習入門,用Lima在macOS免費搭建Docker環境,徹底解決鏡像與收費難題!

國內用戶必看】用Lima在macOS免費搭建Docker環境&#xff0c;徹底解決鏡像與收費難題&#xff01; 為了在不同操作系統有一致操作體驗&#xff0c;我選擇使用docker技術安裝ollama&#xff0c;這樣子還有一個好處&#xff0c;即使玩壞了&#xff0c;刪除重建即可&#xff0c;所…

Java 生成簽名證書

在Java中生成簽名證書通常涉及到使用Java密鑰和證書管理工具&#xff08;Java Key and Certificate Management API&#xff0c;即Java Keytool&#xff09;。這個過程通常包括創建密鑰庫&#xff08;KeyStore&#xff09;&#xff0c;生成密鑰對&#xff08;Key Pair&#xff…

語法分析:編譯器中的“語法警察”

在編程的世界里&#xff0c;每一種編程語言都有自己的語法規則。就像中文有標點符號和語序規則一樣&#xff0c;編程語言也有自己嚴格的語法規則。語法分析器就像一個嚴格的"語法警察"&#xff0c;它的職責是檢查源代碼是否符合語言規范&#xff0c;同時為后續的處理…

容器的定義及工作原理

定義 你可以把 容器 想象成一個 “打包好的軟件快遞箱”。 里面有什么&#xff1f; 這個箱子里不僅裝著你的軟件&#xff08;比如一個網站程序&#xff09;&#xff0c;還把軟件運行所需要的所有東西都打包進去了&#xff0c;比如它需要哪個版本的Python、需要哪些系統文件、配…

云服務掃盲筆記(2) —— SLS 接入與設置自動化

前篇我們學習了SLS的核心用途及概念&#xff0c;本篇以將一個linux服務器的json格式日志接入阿里云SLS為例&#xff0c;繼續學習SLS接入中的關鍵設置及注意事項&#xff0c;以及如何將其實現簡單自動化快速操作。 一、 SLS 日志接入流程 [1] 準備工作&#xff08;確定日志路徑…

LwIP入門實戰 — 6 LwIP 網絡數據包

目錄 6.1 pbuf結構體 6.2 pbuf 的類型 6.2.1 PBUF_RAM 類型的pbuf 6.2.2 PBUF_POOL 類型的pbuf 6.2.3 PBUF_ROM 和 PBUF_REF 類型pbuf 6.3 pbuf 6.3.1 pbuf_alloc() 6.3.2 pbuf_free() 6.4 其它pbuf 操作函數 6.5 網卡中使用的 pbuf 6.5.1 low_level_output() 6.5.…

【已解決】Linux中程序腳本可以手動執行成功,但加在rc.local中不能開機自啟

之前開發遇到的一個問題&#xff1a;在Linux中&#xff0c;明明程序腳本可以手動執行成功&#xff0c;但加到開機自啟動里&#xff0c;卻會失敗&#xff0c;屬實讓人摸不著頭腦。 問題排查&#xff1a; 有以下幾種可能&#xff1a; 自啟動腳本&#xff0c;執行權限不足或者腳本…

切塊、清洗、烹飪:RAG知識庫構建的三步曲

嘿&#xff0c;各位AI技術愛好者們&#xff0c;你是不是經常遇到這樣的情況&#xff1a;辛辛苦苦訓練的AI助手&#xff0c;面對專業問題時卻"一問三不知"或者"胡言亂語"&#xff1f;明明你已經喂了它一堆PDF和Word文檔&#xff0c;為啥它就是不會用&#x…

ubuntu 安裝 docker 詳細步驟

登錄&#xff0c;ubuntu版本 22.04 wqbboy192.168.1.2s password: Welcome to Ubuntu 22.04.5 LTS (GNU/Linux 5.15.0-153-generic x86_64)* Documentation: https://help.ubuntu.com* Management: https://landscape.canonical.com* Support: https://ubuntu.com/…