用工具思路来规范化 git commit message

栏目: 编程工具 · 发布时间: 4年前

内容简介:选用当前业界内应用比较广泛的除此之外, 我们还需要为 commitizen 指定一个 Adapter 比如:
  • 发生问题快速识别问题代码
  • commit和代码建立联系,和相关prd、bug予以关联。

如何写出规范化的 Git Commit Message

选用当前业界内应用比较广泛的 Angular Git Commit Guidelines

<type>(<scope>): <subject>
<BLANK LINE>
<body>
<BLANK LINE>
<footer>
复制代码
  1. type :commit的类型: feat fix refactor docs style test chore

  2. scope :commit 影响的范围, 比如: route, component, utils, build...

  3. subject :commit 的概述

    • 以动词开头,使用第一人称现在时,比如change,而不是changed或changes
    • 第一个字母小写(可以使用中文)
    • 结尾没有符号
  4. body :commit 具体修改内容, 可以分为多行

  5. footer :一些备注, 通常是 BREAKING CHANGE 或修复的 bug 的链接

项目使用参考步骤

1.Commitizen: 替代你的 git commit

commitizen/cz-cli , 我们需要借助它提供的 git cz 命令替代我们的 git commit 命令, 帮助我们生成符合规范的 commit message.

除此之外, 我们还需要为 commitizen 指定一个 Adapter 比如: cz-conventional-changelog (一个符合 Angular团队规范的 preset). 使得 commitizen 按照我们指定的规范帮助我们生成 commit message.

yarn add --dev commitizen cz-conventional-changelog
复制代码

package.json中配置:

"script": {
    ...,
    "commit": "git-cz",
},
 "config": {
    "commitizen": {
      "path": "node_modules/cz-conventional-changelog"
    }
  }
复制代码

如果全局安装过 commitizen, 那么在对应的项目中执行 git cz or npm run commit 都可以

2.Commitlint: 校验你的 message

commitlint : 可以帮助我们 lint commit messages,校验的配置推荐 @commitlint/config-conventional (符合 Angular团队规范). 话不多说直接按照:

yarn add --dev @commitlint/config-conventional @commitlint/cli
复制代码

同时需要在项目目录下创建配置文件 .commitlintrc.js, 写入:

module.exports = {
  extends: [
    '@commitlint/config-conventional'
  ],
  rules: {
  }
};
复制代码

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

计算机组成原理

计算机组成原理

唐朔飞 / 高等教育出版社 / 2008-1 / 43.00元

《面向21世纪课程教材•普通高等教育"十一五"国家级规划教材:计算机组成原理(第2版)》内容简介:为了紧跟国际上计算机技术的新发展,《面向21世纪课程教材•普通高等教育"十一五"国家级规划教材:计算机组成原理(第2版)》对第1版各章节的内容进行了补充和修改,并增加了例题分析,以加深对各知识点的理解和掌握。《面向21世纪课程教材•普通高等教育"十一五"国家级规划教材:计算机组成原理(第2版)》通过对......一起来看看 《计算机组成原理》 这本书的介绍吧!

在线进制转换器
在线进制转换器

各进制数互转换器

随机密码生成器
随机密码生成器

多种字符组合密码

Base64 编码/解码
Base64 编码/解码

Base64 编码/解码