Java Git Commit Message使用规范
目录
- 概述
- 一、Commit message 的格式
- 1.1 Header
- 1.2 Body
- 二、例子
- 2.1 feat例子
- 2.2 fix例子
- 插件推荐
概述
不知道大家在各自项目中是如何写提供代码的commit message, 我们项目有的同事写的很简单,压根不知道提交了什么内容,是新功能还是缺陷修复。本质上 commit message就是为了让团队成员知道这次提交的内容,为此,我们出了一个规范,约定团队的每个同事按照这个规范提交代码,达到通过message能够了解此次修改的内容。
一、Commit message 的格式
每次提交,Commit message 都包括三个部分:Header,Body 和 Footer。
<type>(<scope>): <subject> // 空一行 <body>
其中,Header、针对feat和fix类型的提交内容 Body 是必需的。 不管是哪一个部分,任何一行都不得超过72个字符(或100个字符)。这是为了避免自动换行影响美观。
1.1 Header
Header部分只有一行,包括三个字段: type(必需)、scope(必需)和subject(必需)。
(1)type
type用于说明 commit 的类别,只允许使用下面7个标识。
- feat:新功能(feature)
- fix:修补bug
- docs:文档(documentation)
- style: 格式(不影响代码运行的变动)
- refactor:重构(即不是新增功能,也不是修改bug的代码变动)
- test:增加测试
- build:构建过程或辅助工具的变动
(2)scope
scope用于说明 commit 影响的范围,比如指标模板、规则上下线等等,视项目不同而不同。
(3)subject
subject是 commit 目的的简短描述,不超过50个字符。
- 1. 以动词开头,使用第一人称现在时,比如change,而不是changed或changes
- 2. 第一个字母小写
- 3. 结尾不加句号(.)
1.2 Body
Body 部分是对本次 commit 的详细描述,可以分成多行。
- 1. 需要简要的列出各种正向或者反向的测试场景,测试通过,填pass。
- 2. 增加修改人信息
二、例子
2.1 feat例子
feat(规则上下线、构建、生效、仿真生效): 添加规则上下线功能
1. 规则上下线主流程,引擎正常订阅,fldl生成正常。 pass
2. 规则上下线,传入不存在的规则编号,异常提示。 pass提交人:xxx
2.2 fix例子
fix(模型模块): 模型测试失败
1. 导入mar模型,包含衍生字段。 pass
2. 导入mar模型,不包含衍生字段。 pass提交人:xxx
插件推荐
idea可以安装代码提交规范的插件。
1.安装插件
2.提交时选择插件提交
到此这篇关于Java Git Commit Message使用规范的文章就介绍到这了,更多相关Java Git Commit Message内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!
相关推荐
-
git忽略特殊文件_动力节点Java学院整理
有些时候,你必须把某些文件放到Git工作目录中,但又不能提交它们,比如保存了数据库密码的配置文件啦,等等,每次git status都会显示Untracked files ...,有强迫症的童鞋心里肯定不爽. 好在Git考虑到了大家的感受,这个问题解决起来也很简单,在Git工作区的根目录下创建一个特殊的.gitignore文件,然后把要忽略的文件名填进去,Git就会自动忽略这些文件. 不需要从头写.gitignore文件,GitHub已经为我们准备了各种配置文件,只需要组合一下就可以使用了.所有配
-
github上的java项目怎么运行(面向小白)
前言 今天从github把我以前写的一个小demo下载下来了,第一次下载项目,摸索了一个多小时,才运行起来. 下载有两种方法,通过git下载,或者直接压缩包下载,本文选的是压缩包下载, 压缩包下载 1. 解压项目 2. 导入到IDEA中 选择 File-->Open... 打开目标项目,打开后目录视觉图如下. 这时,是无法运行这个项目的.(显而易见,下图中连JDK都没有,更别说什么JDBC等稍微高级一点的环境了) 3. 给项目配置JDK File-----------> Project St
-
Java中MessageDigest来实现数据加密的方法
MessageDigest MessageDigest 类为应用程序提供信息摘要算法的功能,如 MD5 或 SHA 算法.信息摘要是安全的单向哈希函数,它接收任意大小的数据,输出固定长度的哈希值. MessageDigest 对象开始被初始化.该对象通过使用 update 方法处理数据.任何时候都可以调用 reset 方法重置摘要.一旦所有需要更新的数据都已经被更新了,应该调用 digest 方法之一完成哈希计算. 对于给定数量的更新数据,digest 方法只能被调用一次.digest 被调用后
-
Java中MessageFormat的使用详解
目录 实例 用于字符串替换,你还在用以下的这种方法吗? String.format(String format, Object... args) 这是String类型的静态方法,但是除此之外,JDK提供了更好用的字符串替换方法,就是 MessageFormat.format(String pattern, Object ... arguments) MessageFormat本身与语言环境无关,而与用户提供给MessageFormat的模式和用于已插入参数的子格式模式有关,以生成适用于不同语言环
-
Java利用MessageFormat实现短信模板的匹配
其实没什么技术含量,因为老是想不起来,所以在此文做下记录. 通常我们的应用系统中都会有很多短信的发送,或者是信息邮件等的推送,而这些信息却有着相同的共性,比如只是用户名换了下. 像下面这条,除了红色字体外,其余都是相同的. 尊敬的客户:您的支付宝账户110****11签约网商贷于2018-06-10应还1999.99元,系统将于2018-06-10从该支付宝账户余额.绑定储蓄卡.余额宝.您的网商银行结算账户及余利宝(如有)自动扣款,因余额和储蓄卡还贷款有限额限制,请优先确保余额宝.网商银行结算账
-
java多线程Thread-per-Message模式详解
Thread-per-Message模式(这项工作就交给你了) 当你很忙碌的时候,这个时候公司楼下有个快递,于是你委托你的同事帮你拿一下你的快递,这样你就可以继续做自己的工作了 在Thread-Per-Message模式中,消息的委托端和执行端是不同的线程,消息的委托端会告诉执行端线程,这个工作就交给你了 Host类: 针对请求创建线程的类,主要通过开启新的线程,调用helper的handle,并将要打印的文字传递. public class Host { private final Helpe
-
git自定义_动力节点Java学院整理
Git有很多可以配置的地方. 比如,让Git显示颜色,会让命令输出看起来更醒目: $ git config --global color.ui true 这样,Git会适当地显示不同的颜色,比如git status命令: 文件名就会标上颜色. 我们在后面还会介绍如何更好地配置Git,以便让你的工作更高效. 搭建git服务器 GitHub就是一个免费托管开源代码的远程仓库.但是对于某些视源代码如生命的商业公司来说,既不想公开源代码,又舍不得给GitHub交保护费,那就只能自己搭建一台Git服务器作
-
Java Git Commit Message使用规范
目录 概述 一.Commit message 的格式 1.1 Header 1.2 Body 二.例子 2.1 feat例子 2.2 fix例子 插件推荐 概述 不知道大家在各自项目中是如何写提供代码的commit message, 我们项目有的同事写的很简单,压根不知道提交了什么内容,是新功能还是缺陷修复.本质上 commit message就是为了让团队成员知道这次提交的内容,为此,我们出了一个规范,约定团队的每个同事按照这个规范提交代码,达到通过message能够了解此次修改的内容. 一.
-
js前端架构Git commit提交规范
目录 Git commit 规范 为什么要写好 Git Commit? 如何写好Git Commit 利用插件(commitizen) Git hooks 客户端 Hooks 服务端 Hooks 项目使用 Git Husky link-staged Git commit 规范 在工作中避免不了多人协作,协作避免不了有一个规范的流程,让大家有效的去合作:让项目有条不紊的进行.自然使用 git 规范进行把控也是项目中必不可少的技术了. 为什么要写好 Git Commit? 提供更多的历史信息,方便快
-
详解git commit --amend 用法
有时你提交过代码之后,发现一个地方改错了,你下次提交时不想保留上一次的记录:或者你上一次的commit message的描述有误,这时候你可以使用接下来的这个命令:git commit --amend. git功能十分强大,接下来我将讲解一下git commit --amend命令的用法~ git log之后,可以看到你之前提交过的git历史: 接下来,在bash里输入wq退出log状态,执行: $ git commit --amend 这时bash里会出现以下内容: 其中,second
-
Git commit --amend 修改提交信息操作
amend翻译成中文:修改 1.修改还未push的提交 //修改最近一次提交 git commit --amend //进入注释页面,进行修改 //修改后保存退出 2.修改已经push的提交 //修改最近一次提交 git commit --amend //进入注释页面,进行修改 //修改后保存退出 //强制推送 git push --force-with-lease origin master 补充知识:git 使用amend补上遗漏文件 适用场景:上一次提交遗漏了一些文件,需要补交,但不想多一
-
IntelliJ IDEA 2021.1 EAP 4 发布:字体粗细可调整Git commit template 支持
推荐 最新idea2021注册码永久激活(激活到2100年) IDEA最新激活码2021(IDEA2020.3.2最新永久激活方法) 正文开始 关于IntelliJ IDEA2020.1这次,我们介绍了调整字体粗细,支持Git提交模板,在Kotlin中更快地突出显示代码问题,在IntelliJ IDEA Community Edition中嵌入嵌入式共享索引等功能. 下载IntelliJ IDEA 用户体验 字体粗细可调 选择一款能完美适用于长时间编码的字体是至关重要的.最近增加的排版设置让这种
-
JAVA开发中的一些规范讲解(阿里巴巴Java开发规范手册)
一.编程规约 (一) 命名规约 1. [强制]所有编程相关命名均不能以下划线或美元符号开始,也不能以下划线或美元符号结束.反例: _name / __name / $Object / name_ / name$ / Object$ 2. [强制]所有编程相关的命名严禁使用拼音与英文混合的方式,更不允许直接使用中文的方式.说明:正确的英文拼写和语法可以让阅读者易于理解,避免歧义.注意,即使纯拼音命名方式也要避免采用. 反例: DaZhePromotion [打折] / getPingfen
-
JAVA语言编程格式高级规范
作为一位开发人员,都要有严格的代码规范.为此我总结了一些代码规范案例. 目 录 1. 前言 2. 试用范围 3. JAVA命名规范-- 3.1 公共约定 3.2 Java文件.包 3.3 类.接口命名规范 3.4 方法命名规范 3.5 常量 3.6 变量和参数 3.7 组件/部件 3.8 集合 3.9 神秘的数 3.10 其他 3.11 Java异常 3.12 数组命名 3.13 数据库表命名规则 3.14 数据库字段命名规则 3.15 JSP文件命名 3.16 Servlet类命名 4. 书写
-
Spring Boot中使用Actuator的/info端点输出Git版本信息
对于Spring Boot的Actuator模块相信大家已经不陌生了,尤其对于其中的/health./metrics等强大端点已经不陌生(如您还不了解Actuator模块,建议先阅读<Spring Boot Actuator监控端点小结>).但是,其中还有一个比较特殊的端点/info经常被大家所忽视,因为从最初的理解,它主要用来输出application.properties配置文件中通过info前缀来定义的一些属性,由于乍看之下可能想不到太多应用场景,只是被用来暴露一些应用的基本信息,而基本
-
git验证线上的版本是否符合预期
目录 正文 如何使用 项目中做如下配置 总结 正文 git-commit-id-maven-plugin插件,会根据当前分支的版本号生成一个git.properties文件.git.properties内容形如下 git.branch=master git.build.host=xxx git.build.time=2022-03-01T20\:33\:43+0800 git.build.user.email=aaa@qq.com git.build.user.name=aaa git.buil
-
Vite开发环境搭建详解
目录 Vite初始化项目 集成Vue-Router 集成Vuex 集成Git提交验证 集成Eslint 配置alias Vite现在可谓是炙手可热,可能很多小伙伴还没有使用过Vite,但是我相信大多数小伙伴已经在使用Vite了,因为是太香了有没有.可能在使用过程中很多东西Vite不是配置好的,并不像Vue-cli配置的很周全,那么今天就说一下如何配置开发环境,其中主要涉及到的点有一下几个: TypeScript Vuex Vue-Router E2E
随机推荐
- BootStrap中的表单大全
- php实现数组中索引关联数据转换成json对象的方法
- Python里隐藏的“禅”
- JSP forward用法分析实例代码分析
- 详解MySQL中的分组查询与连接查询语句
- PHP单例模式定义与使用实例详解
- 纯Javascript实现ping功能的方法
- 基于Ajax实现下拉框联动显示数据
- [基础知识]Linux新手系列之二
- eclipse导入jquery包后报错的解决方法
- JavaScrip数组删除特定元素的几种方法总结
- Javascript miscellanea -display data real time, using window.status
- 实用的JS表单验证提示效果
- Java中常见的陷阱题及答案
- 深入分析C#连接Oracle数据库的连接字符串详解
- vue中使用ueditor富文本编辑器
- vue 实现input表单元素的disabled示例
- Golang如何交叉编译各个平台的二进制文件详解
- Yii框架的redis命令使用方法简单示例
- 解决Vue.js 2.0 有时双向绑定img src属性失败的问题