当前位置: 首页 > java >正文

git提交规范记录,常见的提交类型及模板、示例

Git提交规范是一种约定俗成的提交信息编写标准,旨在使代码仓库的提交历史更加清晰、可读和有组织。以下是常见的Git提交类型及其对应的提交模板:

提交信息的基本结构
一个标准的Git提交信息通常包含以下三个主要部分:

  • Header‌:描述提交类型和简短说明,是必填项。‌
  • Body‌:详细说明修改内容(如动机、实现细节),是可选项。
  • Footer‌:关联Issue、描述破坏性变更(BREAKING CHANGE)等,是可选项。

提交信息的基本结构名词解释

  • 作用域(scope)‌:描述影响范围,通常是模块、组件或功能点的名称。
  • 提交描述(subject)‌:应该简洁明了,使用祈使语气,首字母小写,长度建议不超过50个字符。
  • 详细描述(body)‌:在更复杂的提交中,可以添加详细的变更描述,解释为什么要做这个变更,以及与之前行为的对比。每行不超过72个字符,避免自动换行问题。
  • 页脚(footer)‌:通常用于关联Issue、说明重大变更或标注破坏性变更。
  • 通过遵循这些提交规范和模板,可以使团队的Git提交历史更加清晰、可读,并促进协作和代码管理。

常见的提交类型及模板

1.feat‌:新功能(feature)

‌模板‌:

feat(<scope>): <subject><body>
<footer>

示例

feat(user-login): 新增短信验证登录功能实现了短信验证登录功能,用户可以通过输入手机号和验证码进行登录。
Closes #123

2. fix‌:修复bug

‌模板‌:

fix(<scope>): <subject><body>
<footer>

示例

fix(payment-module): 修复支付超时bug修复了支付模块中的支付超时问题,提高了支付成功率。
Fixes #456

3. docs‌:文档变更

模板‌:

docs(<scope>): <subject><body>
<footer>

示例

docs(API): 更新用户模块接口文档更新了用户模块接口文档,补充了getUserInfo接口的权限说明,并修正了createUser的请求体示例格式。

4. style‌:代码格式调整(不影响代码功能)

模板‌:

style(<scope>): <subject><body>
<footer>

示例

style: 调整首页按钮间距调整了首页按钮的间距,使页面布局更加美观。

4.refactor‌:重构代码(不添加新功能也不修复bug)

模板‌:

refactor(<scope>): <subject><body>
<footer>

示例

refactor(cart): 解耦商品价格计算逻辑将商品价格计算逻辑从ShoppingCartService移至独立的PriceCalculator类,提高了代码的可测试性和可维护性。

6. ‌test‌:添加或修改测试

模板‌:

test(<scope>): <subject><body>
<footer>

示例

test(user-service): 添加登录失败用例添加了登录失败用例,覆盖了密码错误、账号锁定等场景,使用Jest模拟Redis服务。

7. chore‌:其他杂项事务,如更新构建工具等

模板‌:

chore(<scope>): <subject><body>
<footer>

示例

chore: 升级Webpack至5.75版本升级了Webpack至5.75版本,修复了tree-shaking对lodash的兼容性问题,并优化了构建产物哈希生成策略。
http://www.xdnf.cn/news/2518.html

相关文章:

  • 【音视频】SDL简介
  • 算法题(135):唯一的雪花
  • 大数据系列 | 日志数据采集工具Logstash的架构分析及应用
  • 微信小程序导航栏
  • C++STL(九) :bitset的介绍与使用
  • MCP介绍与使用
  • 第二部分:网页的妆容 —— CSS(上)
  • OpenSSH配置连接远程服务器MS ODBC驱动与Navicat数据库管理
  • 神经网络预测评估机制:损失函数详解
  • adb devices 报权限错误
  • 文件缓冲区(IO与文件 ·III)(linux/C)
  • 使用 malloc 函数模拟开辟一个 3x5 的整型二维数组
  • 基于QT(C++)实现(GUI)旅行查询与模拟系统
  • Python3 (13)循环语句
  • Java SE(3)——程序逻辑控制,输入输出
  • MySQL的锁(InnoDB)【学习笔记】
  • PlatformIO 入门学习笔记(二):开发环境介绍
  • Matlab算例运行
  • MCU ADC参考电压变化怎么办?
  • JS 中call、apply 和 bind使用方法和场景
  • 犬面部检测数据集VOC+YOLO格式987张1类别
  • ST-LINK/V2调试仿真器的接口定义
  • 计算机组成原理系列3--存储系统
  • 【QT】QT多线程
  • PMO 阶段性工作成果报告
  • 【C++QT】Layout 布局管理控件详解
  • STM32标准库和HAL库SPI发送数据的区别-即SPI_I2S_SendData()和HAL_SPI_Transmit()互换
  • 2025系统架构师---事件驱动架构
  • 开源|上海AILab:自动驾驶仿真平台LimSim Series,兼容端到端/知识驱动/模块化技术路线
  • Java大师成长计划之第5天:Java中的集合框架