阅读 94

给你的项目搭建 Git 提交日志规范

为什么做 Git 提交规范?

在开发项目时,同一个团队的人员提交的日志各不一样,各有特色,有时候也过于简陋,甚至都不知道此次提交到底做了什么,导致非常不便于代码审查和项目管理。为了改变这种现象,我们可以借助工具对 Git 日志进行规范化约束,包括自动化,模板化以及强制校验。

安装与配置

yarn add -D @commitlint/cli @commitlint/config-conventional commitizen cz-conventional-changelog husky standard-version
复制代码
// package.json添加
"scripts": {
    "commit": "git-cz",
    "release": "standard-version"
},
"config": {
    "commitizen": {
        "path": "node_modules/cz-conventional-changelog"
    }
},
"husky": {
    "hooks": {
        "commit-msg": "commitlint -e $GIT_PARAMS"
    }
}

// 根目录添加配置文件.commitlintrc.js
module.exports = {
  extends: ["@commitlint/config-conventional"],
  rules: {}
};
复制代码

库介绍

运行测试

//提交
yarn commit 
复制代码

//生成日志
yarn release
复制代码

提交类型说明

  • feat: 创建新特性
  • fix: 修复bug
  • docs: 更新文档
  • style: 不影响代码含义的更改(空白、格式、缺少分号等)
  • refactor: 代码重构不影响功能(既不修复bug也不添加特性)
  • perf: 改进性能的代码更改
  • test: 添加缺失的测试或纠正现有的测试
  • build: 影响构建系统或外部依赖项的更改(示例范围:gulp、broccoli、npm)
  • ci: 对CI配置文件和脚本的更改(示例范围:Travis, Circle, BrowserStack, SauceLabs)
  • chore: 其他不修改src或测试文件的更改
  • revert: 回滚上一次提交

参考资料

公司内部资料文档

优雅的提交你的 Git Commit Message

文章分类
前端
文章标签