规范Commit格式

Jenkins根据对比当次构建和上次构建的Commit信息来生成ChangeLog,但因为我们目前的提交不够规范,经常有类似"#","update"这列的提交,无法提供给PM有效的更新记录,所以建议大家尽量规范Commit格式。

Conventional Commits

目前推荐大家是有这套规范,如果大家有更好的可以推荐使用,官网链接如下:

Conventional Commits

官网介绍的很详细,要求也比较多,有一些我们可能也用不到,而且也会增加学习难度,所以我这边整理了一下适合我们的规范,比较简单,但应该够用,

格式

原文

    <type>[optional scope]: <description>

    [optional body]

    [optional footer(s)]

译文

    <类型>[可选 范围]: <描述>

    [可选 正文]

    [可选 脚注]

格式说明

示例如下:

type

  1. fix: 类型fix 的提交表示在代码库中修复了一个bug。
  2. feat: 类型feat 的提交表示在代码库中新增了一个功能。
  3. perf:类型 为 perf 的提交表示在代码库中做了性能优化。
  4. style:类型 为 style 的提交表示在不影响代码含义的变化(空白,格式化,缺少分号等)。
  5. docs:类型 为 docs 的提交表示仅更新文档。
  6. refactor:类型 为 refactor 的提交表示重构,不修复 bug 且不添加功能。

示例属于新增功能,所以使用了feat

optional scope

范围必须是一个描述某部分代码的名词,并用圆括号包围。

示例只影响到BlankSystem,所以scope写的是这次只针对BlankSystem。

description

描述字段必须直接跟在<类型>(范围) 前缀的冒号和空格之后。 描述指的是对代码变更的简短总结。

示例总结主要是为了能让非开发(PM)看懂,方便写release note,所以尽量用大家都知道的描述。

optional body

在简短描述之后,可以编写较长的提交正文,为代码变更提供额外的上下文信息。正文必须起始于描述字段结束的一个空行后。

示例简短描述是为了给非开发(PM)查看,正文是尽量让研发内部直接看懂,这里建议大家尽量写的清楚详细。

optional footer(s)

如果和每个jira相关,附带就可以

CLion示例

1. 下载插件Conventional Commit

2. Commit窗口打钩需要push的文件,然后邮件选择Commit Files...

3. Commit窗口左下角Amend左键红圈

4. Build Commit Message填好更新内容,然后会自动更新到Amend



5. Amend窗口点击Commit and Push...,然后在Push Commits to xxxx的窗口push

6. 最后在Bitbucket上可以看到提交内容

[git] 规范Commit格式的更多相关文章

  1. git的commit规范及强制校验

      1.背景 在多人协作项目中,如果代码风格统一.代码提交信息的说明准确,那么在后期协作以及Bug处理时会更加方便. 先来介绍本人公司采用的commit规范 Commit message格式 < ...

  2. Git 学习(三)本地仓库操作——git add & commit

    Git 学习(三)本地仓库操作——git add & commit Git 和其他版本控制系统如SVN的一个不同之处就是有暂存区的概念.这在上文已有提及,本文具体说明什么是工作区及暂存区,以及 ...

  3. [git] 细说commit (git add/commit/diff/rm/reset 以及 index 的概念)

    http://kasicass.blog.163.com/blog/static/39561920133294219374/ 创建测试仓库 $ git init $ echo "line o ...

  4. spring boot / cloud (二) 规范响应格式以及统一异常处理

    spring boot / cloud (二) 规范响应格式以及统一异常处理 前言 为什么规范响应格式? 我认为,采用预先约定好的数据格式,将返回数据(无论是正常的还是异常的)规范起来,有助于提高团队 ...

  5. git撤销commit 并保存之前的修改

    撤销并保留修改 参数 –soft  # 先进行commit ,之后后悔啦  $ git commit -am "对首篇报告研究员字段改为author_name" 执行git log ...

  6. git 修改commit 的注释

    git 修改commit 的注释 一:最新的一次提交 当你不小心,写错了提交的注视/信息,该如何处理呢.理论上,SCM是不应该修改历史的信息的,提交的注释也是.    不过在git中,其commit提 ...

  7. 前端使用工具规范commit信息

    前言 通过工具规范git提交信息也是工程化的一部分,在前端领域有一些工具为我们提供了相关功能,在这里做一下使用总结. commitlint commitlint是什么? 就像eslint用来检查js代 ...

  8. PHP 代码规范、流程规范、git规范

    1. 命名规范 (1).变量命名规范 1.变量使用驼峰命名法 禁止使用拼音或者拼音加数字 2.变量也应具有描述性,杜绝一切拼音.或拼音英文混杂的命名方式 3.变量包数字.字母和下划线字符,不允许使用其 ...

  9. [Git] 还原Git上commit,但是没有push代码

    直接在Idea上操作2步解决: 1. 找到: 2. 在To Commit里面填写:HEAD^,表示将commit的信息还原为上一次的,需要多次直接reset多次即可: 使用命令行:原理一样 以下内容转 ...

  10. Git Merge Commit忘了选分支?数据丢失? 刚刚做的都丢失了?别急!

    1.打开终端,进入到对应的git 目录,也就是你的项目目录. 2.然后输入 git reflog,找到自己commit的版本 3.根据对应的编码输入指令,如:git checkout e53fa44( ...

随机推荐

  1. HTML5第五章作业

    5.1.3 html 1 <!DOCTYPE html> 2 <html> 3 <head> 4 <meta charset="utf-8" ...

  2. 第12组 Beta冲刺 (2/5)

    1.1基本情况 ·队名:美少女战士 ·组长博客:https://www.cnblogs.com/yaningscnblogs/p/14016602.html ·作业博客:https://edu.cnb ...

  3. HashMap中的Entry接口

    利用Entry接口,快速又方便 import java.util.HashMap; import java.util.Map; public class MapDemo { public static ...

  4. nuxtjs项目空白路由强跳到首页

    1.根目录下新建middleware文件夹并新建文件unknownRoute.js,代码如下 /** * 未知路由重定向 到首页 */ export default ({store, route, r ...

  5. APK 跳转其他APK

    +import android.content.ComponentName;^M /* @@ -343,6 +346,15 @@ public class MainActivity extends A ...

  6. MySQL数据库性能优化的八种方式

    1.选取最适用的字段属性 MySQL可以很好的支持大数据量的存取,但是一般说来,数据库中的表越小,在它上面执行的查询也就会越快.因此,在创建表的时候,为了获得更好的性能,我们可以将表中字段的宽度设得尽 ...

  7. 微信小程序 真机调试白屏

    真机调试白屏,报define is not defined 解决:   更新小程序版本

  8. Swagger UI教程 API 文档神器 搭配Node使用 web api 接口文档 (转)

    http://www.68idc.cn/help/makewebs/qitaasks/20160621620667.html 两种方案 一.Swagger 配置 web Api 接口文档美化 二.通过 ...

  9. python实现简单猜数字游戏

    #!/usr/bin/env python import os import random import sys import time def yanse(s): print('\033[25;31 ...

  10. Java反射机制知识

    modifier:修饰语 名词 JAVA 反射机制中,Field的getModifiers()方法返回int类型值表示该字段的修饰符. 其中,该修饰符是java.lang.reflect.Modifi ...