Git Commit 規范以及emoji 使用指南


Git Commit 規范以及emoji 使用指南

Git版本規范

分支

  • master分支為主分支(保護分支),不能直接在master上進行修改代碼和提交
  • develop分支為測試分支,所以開發完成需要提交測試的功能合並到該分支
  • feature分支為開發分支,大家根據不同需求創建獨立的功能分支,開發完成后合並到develop分支
  • fix分支為bug修復分支,需要根據實際情況對已發布的版本進行漏洞修復

Tag

采用三段式,v版本.里程碑.序號,如v1.2.1

  • 架構升級或架構重大調整,修改第2位
  • 新功能上線或者模塊大的調整,修改第2位
  • bug修復上線,修改第3位

changelog

  • 版本正式發布后,需要生產changelog文檔,便於后續問題追溯

commit message規范

Commit message一般包括三部分:HeaderBodyFooter

  • type(scope):subject

  • type:用於說明commit的類別,規定為如下幾種

    • feat:新增功能;
    • fix:修復bug;
    • docs:修改文檔;
    • refactor:代碼重構,未新增任何功能和修復任何bug;
    • build:改變構建流程,新增依賴庫、工具等(例如webpack修改);
    • style:僅僅修改了空格、縮進等,不改變代碼邏輯;
    • perf:改善性能和體現的修改;
    • chore:非src和test的修改;
    • test:測試用例的修改;
    • ci:自動化流程配置修改;
    • revert:回滾到上一個版本;
  • scope:【可選】用於說明commit的影響范圍

  • subject:commit的簡要說明,盡量簡短

Body

  • 對本次commit的詳細描述,可分多行

尾部(Footer)

  • 不兼容變動:需要描述相關信息
  • 關閉指定Issue:輸入Issue信息

git commit中使用emoji

  • emoji規范格式

git commit 時,提交信息遵循以下格式:

:emoji1: :emoji2: 不超過 50 個字的摘要,首字母大寫,使用祈使語氣,句末不要加句號

提交信息主體

引用相關 issue 或 PR 編號 <#110>

初次提交示例:

git commit -m ":tada: Initialize Repo"
  • emoji 指南

emoji emoji 代碼 commit 說明
🎉 (慶祝) :tada: 初次提交
✨ (火花) :sparkles: 引入新功能
🔖 (書簽) :bookmark: 發行/版本標簽
🐛 (bug) :bug: 修復 bug
🚑 (急救車) :ambulance: 重要補丁
🌐 (地球) :globe_with_meridians: 國際化與本地化
💄 (口紅) :lipstick: 更新 UI 和樣式文件
🚨 (警車燈) :rotating_light: 移除 linter 警告
🔧 (扳手) :wrench: 修改配置文件
➕ (加號) :heavy_plus_sign: 增加一個依賴
➖ (減號) :heavy_minus_sign: 減少一個依賴
⬆️ (上升箭頭) :arrow_up: 升級依賴
⬇️ (下降箭頭) :arrow_down: 降級依賴
⚡️ (閃電)
🐎 (賽馬)
:zap:
:racehorse:
提升性能
📈 (上升趨勢圖) :chart_with_upwards_trend: 添加分析或跟蹤代碼
🚀 (火箭) :rocket: 部署功能
✅ (白色復選框) :white_check_mark: 增加測試
📝 (備忘錄) :memo: 撰寫文檔
🔨 (錘子) :hammer: 重大重構
🎨 (調色板) :art: 改進代碼結構/代碼格式
🔥 (火焰) :fire: 移除代碼或文件
✏️ (鉛筆) :pencil2: 修復 typo
🚧 (施工) :construction: 工作進行中
👷 (工人) :construction_worker: 添加 CI 構建系統
💚 (綠心) :green_heart: 修復 CI 構建問題
🔒 (鎖) :lock: 修復安全問題
🐳 (鯨魚) :whale: Docker 相關工作
🍎 (蘋果) :apple: 修復 macOS 下的問題
🐧 (企鵝) :penguin: 修復 Linux 下的問題
🏁 (旗幟) :checked_flag: 修復 Windows 下的問題

案例

  • 使用commit message規范

  • 使用commit emoji規范

Git Commit 優點

  • 統一團隊Git Commit標准,便於后續代碼review、版本發布、自動化生成change log
  • 可以提供更多更有效的歷史信息,方便快速預覽以及配合cherry-pick快速合並代碼
  • 團隊其他成員進行類git blame時可以快速明白代碼用意


免責聲明!

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



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