以下内容有AI生成的。
Git 提交规范中提交类型前缀没有绝对固定的完整版,会因项目需求和团队约定而有所不同,以下是较为全面的常见类型前缀:
功能相关
feat:全称为 feature,用于新增功能的提交,表明此次提交为项目添加了新的功能特性。
feature/:表示特定功能模块下的新功能开发提交,“” 为具体的功能模块名称,能更清晰地表明新功能所属的模块或领域。
问题修复
fix:用于修复 Bug 的提交,说明此次提交解决了项目中存在的问题或缺陷。
fix/:表示特定功能模块下的问题修复提交,“” 为具体的功能模块名称,方便快速定位问题所在模块。
文档相关
docs:用于与文档相关的更改,包括代码注释、项目说明、使用文档、接口文档等的新增、修改或删除。
readme:专门用于对项目根目录下README.md文件的修改,方便突出对项目介绍文件的变更。
代码风格
style:表示仅涉及代码风格的更改,不影响代码的功能逻辑,如代码格式化、缩进调整、空格或分号的添加删除等。
代码重构
refactor:代表代码重构,即对现有代码进行重新结构调整、优化,但不增加新功能或修复缺陷,目的是提高代码的可读性、可维护性、可扩展性等。
测试相关
test:用于提交与测试相关的代码更改,包括新增测试用例、修改测试逻辑、修复测试代码中的问题等。
testfix:专门用于修复测试用例中存在的问题,与test相比,更强调是对测试用例本身缺陷的修复。
构建与部署
build:主要用于与构建系统相关的更改,包括构建工具的配置修改、构建脚本的更新、打包流程的调整等。
depl:用于标记与部署相关的提交,包括部署脚本的更新、服务器配置的更改、环境变量的调整等。
持续集成
ci:用于提交与持续集成相关的更改,涉及到 CI 服务器的配置、自动化流程的调整、测试脚本的更新等。
性能优化
perf:主要用于性能优化相关的提交,说明对代码进行了性能方面的改进,如提高了执行速度、减少了内存占用等。
安全相关
security:用于提交与安全相关的更改,包括修复安全漏洞、增强身份验证机制、加密敏感数据等,以提高项目的安全性。
类型定义
types:在使用 TypeScript 等类型化语言时,用于提交与类型定义相关的更改,如新增、修改或删除类型声明文件、类型定义的优化等。
杂项
chore:用于表示对构建流程、辅助工具、依赖管理等杂项的更改,不直接涉及业务逻辑或代码功能。
wip:即 Work in Progress 的缩写,用于表示这是一个正在进行中的工作提交,通常用于临时提交未完成的工作,以保存当前的工作进度。
回滚操作
revert:用于提交回滚操作,表明此次提交是对之前某次提交的撤销或回滚,通常会在提交信息中注明回滚的是哪次提交。
示例
以下是 Git 提交规范中常见提交类型前缀的使用场景及示例:
- feat(新增功能)
场景:在开发新的业务功能时使用。如电商系统中新增用户积分兑换功能。
示例:feat(user): 添加用户积分兑换商品功能 - fix(修复问题)
场景:当发现并修复了系统中的 Bug 时使用。如修复用户登录时验证码不显示的问题。
示例:fix(login): 修复验证码在部分浏览器不显示问题 - docs(文档相关)
场景:对项目的文档进行新增、修改或删除等操作时使用。如更新项目的接口文档。
示例:docs: 更新用户登录和注册接口文档 - style(代码风格)
场景:仅对代码的风格进行调整,不改变代码功能逻辑时使用。如统一代码缩进为 4 个空格。
示例:style: 将代码缩进统一为4个空格 - refactor(代码重构)
场景:对现有代码进行结构调整和优化,不增加新功能和修复问题时使用。如对订单处理模块的代码进行重构,提高可读性。
示例:refactor(order): 重构订单处理模块代码 - test(测试相关)
场景:添加、修改或更新测试用例、测试脚本等测试相关代码时使用。如为用户注册功能新增单元测试用例。
示例:test(user): 为用户注册功能添加单元测试 - build(构建相关)
场景:对项目的构建系统、构建脚本等进行修改时使用。如更新项目的 Webpack 配置,以优化打包速度。
示例:build: 优化Webpack打包配置,提高打包速度 - depl(部署相关)
场景:涉及部署脚本、服务器配置等部署相关内容的更改时使用。如更新生产环境服务器的 Nginx 配置。
示例:depl: 更新生产环境Nginx配置 - ci(持续集成)
场景:对持续集成流程、配置文件等进行修改时使用。如修改 Jenkins 的配置,添加新的构建步骤。
示例:ci: 在Jenkins中添加代码质量检查步骤 - perf(性能优化)
场景:对项目的性能进行优化,如提高响应速度、减少内存占用等操作时使用。如优化数据库查询语句,提高查询性能。
示例:perf: 优化用户列表查询SQL,提升查询速度 - security(安全相关)
场景:对项目的安全方面进行改进,如修复安全漏洞、加强加密等操作时使用。如修复 SQL 注入漏洞。
示例:security: 修复用户登录接口SQL注入漏洞 - types(类型定义)
场景:在使用 TypeScript 等类型化语言时,对类型定义文件进行新增、修改等操作时使用。如为用户模块添加更准确的类型定义。
示例:types(user): 为用户模块添加详细类型定义 - chore(杂项)
场景:对构建流程、辅助工具、依赖管理等杂项进行更改,不直接涉及业务逻辑或代码功能时使用。如更新项目的依赖包版本。
示例:chore: 将项目中lodash依赖更新到最新版本 - wip(工作进行中)
场景:当工作尚未完成,需要临时提交保存进度时使用。如正在开发用户权限管理功能,先提交一部分代码。
示例:wip: 初步搭建用户权限管理模块框架 - revert(回滚操作)
场景:当需要回滚之前的某个提交时使用。如回滚之前一次导致系统崩溃的代码修改。
示例:revert: 回滚fea(user)添加的用户权限管理功能,因存在严重Bug