前端项目git提交规范配置

这篇具有很好参考价值的文章主要介绍了前端项目git提交规范配置。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

项目规范管理

目的

为了使团队多人协作更加的规范,所以需要每次在 git 提交的时候,做一次硬性规范提交,规范 git 的提交信息

使用commitizen规范git提交(交互式提交 + 自定义提示文案 + Commit规范)

  1. 安装依赖
  pnpm install -D commitizen cz-conventional-changelog @commitlint/config-conventional @commitlint/cli commitlint-config-cz cz-customizable
  1. 配置package.json
{
  "scripts": {
    "commit:comment": "引导设置规范化的提交信息",
    "commit": "git-cz"
  },
  "config": {
    "commitizen": {
      "path": "node_modules/cz-customizable"
    },
    "cz-customizable": {
      // 若项目配置了type: "module", 就需要修改配置文件的后缀名为cjs, 并添加这个配置
      "config": ".cz-config.cjs"
    }
  }
}
  1. 新增配置文件commitlint.config.js
module.exports = {
  extends: ['@commitlint/config-conventional', 'cz'],
  rules: {
    'type-enum': [
      2,
      'always',
      [
        'feature', // 新功能(feature)
        'bug', // 此项特别针对bug号,用于向测试反馈bug列表的bug修改情况
        'fix', // 修补bug
        'ui', // 更新 ui
        'docs', // 文档(documentation)
        'style', // 格式(不影响代码运行的变动)
        'perf', // 性能优化
        'release', // 发布
        'deploy', // 部署
        'refactor', // 重构(即不是新增功能,也不是修改bug的代码变动)
        'test', // 增加测试
        'chore', // 构建过程或辅助工具的变动
        'revert', // feat(pencil): add ‘graphiteWidth’ option (撤销之前的commit)
        'merge', // 合并分支, 例如: merge(前端页面): feature-xxxx修改线程地址
        'build', // 打包
      ],
    ],
    // <type> 格式 小写
    'type-case': [2, 'always', 'lower-case'],
    // <type> 不能为空
    'type-empty': [2, 'never'],
    // <scope> 范围不能为空
    'scope-empty': [2, 'never'],
    // <scope> 范围格式
    'scope-case': [0],
    // <scope> 枚举范围
    'scope-enum': [1, 'always'],
    // <subject> 主要 message 不能为空
    'subject-empty': [2, 'never'],
    // <subject> 以什么为结束标志,禁用
    'subject-full-stop': [0, 'never'],
    // <subject> 格式,禁用
    'subject-case': [0, 'never'],
    // <body> 以空行开头
    'body-leading-blank': [1, 'always'],
    'header-max-length': [0, 'always', 72],
  },
}
  1. 添加自定义提示.cz-config.cjs
    module.exports = {
      types: [
        { value: 'feature', name: '✨ Features |   增加新功能' },
        { value: 'bug', name: '🐛 Bug Fixes | 测试反馈bug列表中的bug号' },
        { value: 'fix', name: '🐛 Bug Fixes | 修复bug' },
        { value: 'ui', name: '💄 UI| 更新UI' },
        { value: 'docs', name: '📝 Documentation |文档变更' },
        { value: 'style', name: '💄 Styles | 风格(不影响代码运行的变动)' },
        { value: 'perf', name: '⚡Performance Improvements | 性能优化' },
        { value: 'refactor', name: '♻ Code Refactoring |重构(既不是增加feature,也不是修复bug)' },
        { value: 'release', name: 'release:  发布' },
        { value: 'deploy', name: '🚀 Chore |部署' },
        { value: 'test', name: '✅ Tests |增加测试' },
        { value: 'chore', name: '🚀 Chore |构建过程或辅助工具的变动(更改配置文件)' },
        { value: 'revert', name: '⏪ Revert | 回退回退' },
        { value: 'build', name: '📦‍ Build System |打包' },
      ],
      // override the messages, defaults are as follows
      messages: {
        type: '请选择提交类型:',
        customScope: '请输入您修改的范围(可选):',
        subject: '请简要描述提交 message (必填):',
        body: '请输入详细描述(可选,待优化去除,跳过即可):',
        footer: '请输入要关闭的issue(待优化去除,跳过即可):',
        confirmCommit: '确认使用以上信息提交?(y/n/e/h)',
      },
      // 要是同一个git下有多个项目文件家, 可以打开注释选择git要操作的项目
      // scopes: [{ name: 'h5' }, { name: 'manage'}],
      allowCustomScopes: true,
      skipQuestions: ['body', 'footer'],
      subjectLimit: 72,
    }
    

使用prettier格式化代码

  1. 安装
  pnpm add --save-dev --save-exact prettier
  1. 创建.prettierrc文件,并添加如下配置, 具体配置可以查看官网
{
  "semi": false,
  "tabWidth": 2,
  "useTabs": false,
  "singleQuote": true,
  "printWidth": 150
}

使用husky及lint-staged再提交代码时格式化代码

  1. 安装(注意:这里与prettier官网的给出的示例不太一致, 建议看husky官网进行配置)
     pnpm add --save-dev husky lint-staged
     pnpm exec husky init
     npm pkg set scripts.prepare="husky"
    
  2. package.json添加如下配置
{
  "lint-staged": {
    "**/*": "prettier --write --ignore-unknown"
  }
}
  1. .husky新建pre-commit文件,并添加如下配置
  echo "🚀 pre-commit"
  echo "npx --no-install lint-staged"
  npx --no-install lint-staged
  1. .husky新建commit-msg文件,并添加如下配置
  echo "🚀 commit-msg"
  echo "npx --no-install commitlint --edit \"$1\""
  npx --no-install commitlint --edit "$1"

完结

git add后执行pnpm run commit命令根据提示输入commit信息即可。文章来源地址https://www.toymoban.com/news/detail-826899.html

到了这里,关于前端项目git提交规范配置的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【vue3-element-admin】Husky + Lint-staged + Commitlint + Commitizen + cz-git 配置 Git 提交规范

    本文介绍 vue3-element-admin 如何通过 Husky + Lint-staged + Commitlint + Commitizen + cz-git 来配置 Git 提交代码规范。 核心内容是配置 Husky 的 pre-commit 和 commit-msg 两个钩子: pre-commit :Husky + Lint-staged 整合实现 Git 提交前代码规范检测/格式化 (前提:ESlint + Prettier + Stylelint 代码统一规范);

    2023年04月17日
    浏览(45)
  • 前端项目规范化:手把手教你使用prettier和pre-commit(git hook或者husky)优化规范项目代码

    最简单的两种方式: 使用 prettier + git pre-commit 使用 prettier + husky(原理和第一种一模一样哦) git hooks 下图为git hooks的官方示例,以.sample结尾。注意这些以.sample结尾的示例脚本是不会执行的,重命名后会生效 是一些自定义的脚本,用于控制git工作的流程,分为客户端钩子和服务

    2024年02月04日
    浏览(26)
  • git代码提交规范、强制git代码提交规范、强制代码进行格式化

    1、安装commitizen和cz-customizable npm install -g commitizen@4.2.4 npm i cz-customizable@6.3.0 --save-dev 2、在package.json中进行新增 \\\"config\\\": {   \\\"commitizen\\\": {     \\\"path\\\": \\\"node_modules/cz-customizable\\\"   } } 3、初始化完成之后 将.cz-config.js配置文件 拖到根目录下 4、之后就可以用 git cz 来代替 git commit    (在

    2024年02月13日
    浏览(17)
  • Git提交规范指南

    在开发过程中,Git每次提交代码,都需要写Commit message(提交说明),规范的Commit message有很多好处: 方便快速浏览查找,回溯之前的工作内容 可以直接从commit 生成Change log(发布时用于说明版本差异) 为了方便使用,我们避免了过于复杂的规定,格式较为简单且不限制中英文

    2024年02月12日
    浏览(10)
  • git提交规范

    在团队协作中,Git 提交规范对于代码的可维护性和版本管理非常重要。下面总结了一些常见的提交规范: 每个 Git 提交信息都应该包含一个清晰简洁的标题和一个更详细的描述。推荐的提交信息格式如下: 其中, type 代表提交类型, scope 代表影响范围, subject 是提交信息的

    2024年02月05日
    浏览(43)
  • git commit 提交规范

    大致分为三个部分(使用空行分割): 标题行: 描述主要修改类型和内容 主题内容 页脚注释: 放 Breaking Changes 或 Closed Issues type commit 的类型: feat: 新功能、新特性 fix: 修改 bug perf: 更改代码,以提高性能(在不影响代码内部行为的前提下,对程序性能进行优化) refactor: 代码重构

    2024年01月18日
    浏览(18)
  • git提交注释规范

    首先下载安装git,配置好公私密钥和github git init git remote add origin [远程库地址] git pull origin master git add . git commit -m “注释” git push origin master 其他: git status git log git branch git checkout git merge type(scope): subject // 空一行 body 用于说明 commit 的类别 br: 此项特别针对bug号,用于向测

    2024年01月24日
    浏览(20)
  • Git 提交规范

    在项目中采用 git 管理代码版本时,突然不能进行提交(git commit)。 报错信息如下: ERROR invalid commit message format. Proper commit message format is required for automated changelog generation. 合法的提交日志格式如下(emoji 和 模块可选填): 💥 feat(模块): 添加了个很棒的功能 🐛 fix(模块): 修复

    2024年01月19日
    浏览(14)
  • Git 提交前缀规范

    feat : 新功能。添加一个新的用户界面元素、一个新的功能或一个新的 API fix : 修复 bug。修复一个导致应用程序崩溃的错误、一个导致数据丢失的错误或一个导致用户体验不佳的错误 docs : 文档更新。更新你的应用程序的用户指南、更新你的 API 文档或更新你的技术文档 style

    2024年01月19日
    浏览(23)
  • Git 提交描述规范

    在Git提交消息中,可以使用特定字符来表示特定的功能,这些字符的使用可以提高提交描述的可读性和易用性,常见的字符如下: fix :表示该提交用于修复错误或问题。 feat :表示该提交用于添加新功能。 docs :表示该提交用于更新文档。 style :表示该提交用于代码格式化

    2024年02月16日
    浏览(13)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包