zoukankan      html  css  js  c++  java
  • git与语义化规范

    Git commit规范

    作用:

    • 能加快 Code Review 的流程
    • 根据 Git Commit 的元数据生成 Changelog
    • 后续维护者可以知道 Feature 被修改的原因

    技术方案

    提交的格式要求

    一般来说

    type

    type 代表了某次提交的类型,比如是修复一个 bug 还是增加了一个新的 feature。所有的type 类型如下:

    • feat:新增 feature
    • fix:修复 bug
    • docs:仅仅修改了文档,比如 READMECHANGLELOG 等等
    • style:仅仅修改了空格、格式缩进、多行等等,不改变逻辑
    • refactor:代码重构,没有加新的功能或者修复 bug
    • perf:优化相关,比如提升性能、体验等
    • test:测试用例,包括单元测试、集成测试等
    • chore:改变构建流程,或者增加依赖库、工具等
    • revert:回滚到上一个版本

    Scope

    scope 字段用于说明本次 commit 所影响的范围,比如视图层、数据模型或者路由模块等,是一个可选参数。

    subject

    subject 字段是本次 commit 的一个概要,需要用最简洁的语言来说明本次修改的内容。

    Body

    可以使用多行文本详细地说明本次提交所改动的一些细节,从而帮助后续的使用者们更好地了解代码的内容。

    Footer 部分只用于两种情况。

    • 不兼容变动

    如果本次的 commit 与前一个版本的代码无法兼容,那么 Footer 部分需要以 BREAKING CHANGE 开头,后面描述本次变动的详细情况以及迁移到新版本代码的方法。

    • 关闭 Issue

    如果当前 commit 针对某个 issue,那么可以在 Footer 部分关闭这个 issue 。以 Close 开头,后面用 # 号标识对应的 Issue 号码。

    其次还可以用  validate-commit-msg

    使用 validate-commit-msg 在提交之前验证 commit 信息是否符合要求。同时使用 husky 来为本地开发阶段增加 precommit 钩子

    Commitizen

    如果你觉得自己写规范的 comment 信息太麻烦,那么你可以使用Commitizen ,这是一个是一个撰写合格 Commit message 的工具。

  • 相关阅读:
    HDU 3874 Necklace 区间查询的离线操作
    POJ 1651 Multiplication Puzzle (区间dp)
    POJ 2528 Mayor's posters(离散+线段树)
    POJ 2886 Who Gets the Most Candies?
    webgl教程
    GL_ARRAY_BUFFER 和 GL_ELEMENT_ARRAY_BUFFER
    几个不错的webgl教程网
    svg图标库
    sublime text nodejs set
    图形学着色器学习
  • 原文地址:https://www.cnblogs.com/LeoXnote/p/14103605.html
Copyright © 2011-2022 走看看