规范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. 12.7 linux学习第十四天

    今天老刘开始讲第10章,主要讲Ahache服务和SELinux安全子系统 10.1 网站服务程序 1970年,作为互联网前身的ARPANET(阿帕网)已初具雏形,并开始向非军用部门开放,许多大学和商业 ...

  2. hdu: Dire Wolf(区间DP)

    Problem DescriptionDire wolves, also known as Dark wolves, are extraordinarily large and powerful wo ...

  3. Mysql压缩版安装

    1.官网去下载压缩版本(https://dev.mysql.com/downloads/) 这里下载Community版(因为免费<-_->   它功能和Enterprise版功能差不多) ...

  4. Unity学习笔记——坐标转换(1)

    1.Center与Pivot的区别 Pivot是模型坐标轴的真实位置,将辅助图标定位在网格的实际轴心点. Center是模型渲染边界的中心. 当包含子物体时,Pivaot模式辅助图标在物体的实际轴心点 ...

  5. WCF使用post 提交

    [OperationContract] [WebInvoke(RequestFormat = WebMessageFormat.Json, ResponseFormat = WebMessageFor ...

  6. 10.14 2020 实验 7:OpenDaylight 实验——Python 中的 REST API 调用

    一.实验目的  对 Python 调用 OpenDaylight 的 REST API 方法有初步了解.   二.实验任务  本实验需要用另一种方法完成上一个实验相同的功能,即通过 Python 程序 ...

  7. Spring Framework学习总结

    一.Spring 概述 Spring 有两个核心部分: IoC 和 AOP. Spring 是一种基于 Bean 的编程技术,它深刻地改变着 Java 开发世界.Spring 使用简单.基本的 Jav ...

  8. Java中简单易懂的HashMap面试题(面试必备)

    这篇文章仅限小编个人的理解,小编不是Java方向的,只是对Java有很高的学习兴趣 如果有什么不对的地方还望大佬指点 HashMap的底层是数组+链表,(很多人应该都知道了) JDK1.7的是数组+链 ...

  9. win10下Word点击链接跳转,提示“由于本机的限制,该操作已取消”

    Word按住Ctrl点击链接进行跳转,提示"由于本机的限制,该操作已取消,请联系管理员" 网上很多,修改注册表 这边要说的是,修改重启word ,还不行的解决方法:点开任务管理器- ...

  10. github fork 别人的项目源作者更新后如何同步更新

    如下 左边选择我们拷贝的库  右边选择原工程 如下 点击箭头指向的位置 然后选择右边原工程目录