当前位置: 首页 > article >正文

在 VS Code 中规范化 Git 提交消息并自动生成 CHANGELOG.md

1. 使用 Commitizen 规范化 Git 提交消息

首先,安装 Commitizen 和适用于 Angular 提交规范的适配器:

npm install -g commitizen
commitizen init cz-conventional-changelog --save-dev --save-exact

这样,提交信息将遵循 Angular 规范,比如 feat(新功能)、fix(修复)、docs(文档)、style(格式)、refactor(重构)、test(测试)、chore(杂务)等格式。

2. 使用 Husky 和 Commitlint 验证提交消息

安装 Husky 和 Commitlint:

npm install husky @commitlint/config-conventional @commitlint/cli --save-dev

在项目根目录创建 commitlint.config.js 配置文件:

// commitlint.config.js
module.exports = {
  extends: ['@commitlint/config-conventional'],
};

接着,设置 Husky 钩子来验证提交消息:

npx husky install
npx husky add .husky/commit-msg 'npx --no-install commitlint --edit "$1"'

3. 使用 standard-version 自动生成 CHANGELOG.md

standard-version 是一种用于版本管理的工具,可以基于提交历史自动生成和更新 CHANGELOG.md 文件。

安装 standard-version

npm install standard-version --save-dev

package.json 文件中添加脚本命令:

{
  "scripts": {
    "release": "standard-version"
  }
}

运行以下命令生成或更新 CHANGELOG.md

npm run release

每次运行 npm run releasestandard-version 会分析提交历史,根据提交类型(如 featfix)更新 CHANGELOG.md,并自动更新 package.json 中的版本号。

4. 配置 VS Code 提交流程

.vscode/settings.json 中设置如下选项,以在每次提交时自动使用 Commitizen:

{
  "git.enableCommitSigning": true,
  "git.postCommitCommand": "commitizen"
}

这样每次提交时,会自动引导用户使用 Commitizen 格式提交信息,从而保持提交信息的规范性。

总结

完成以上配置后,可以使用如下流程:

  1. 使用 git cz 替代 git commit 提交规范化的消息。
  2. 通过 npm run release 自动生成或更新 CHANGELOG.md 文件。

这样,Git 提交信息的规范性和变更日志自动化生成都可以在 VS Code 中高效实现。


http://www.kler.cn/a/378256.html

相关文章:

  • Linux云计算 |【第五阶段】CLOUD-DAY6
  • 408——计算机网络(持续更新)
  • Docker-安装
  • 全志A133 android10 LVDS幅值调节
  • Java 中 HashMap集合使用
  • 如何修改网络ip地址:一步步指南‌
  • gin中间件
  • [极客大挑战 2019]FinalSQL
  • [ 问题解决篇 ] win11中本地组策略编辑器gpedit.msc打不开(gpedit.msc缺失)
  • kubectl常用命令简介
  • 万字长文详解Hive聚合函数 grouping sets、cube、rollup原理、语法、案例和优化
  • HTML 框架
  • PHP如何处理密码嗅探和重播攻击
  • Django3 + Vue.js 前后端分离书籍添加项目Web开发实战
  • 助力风力发电风机设备智能化巡检,基于YOLOv7全系列【tiny/l/x】参数模型开发构建无人机巡检场景下风机叶片缺陷问题智能化检测预警模型
  • Chrome与夸克的安全性对比
  • Vivo开奖了,劝退价。。
  • Numpy实现BatchNorm2d
  • springboot Lark扫码登录
  • WPF+MVVM案例实战(十七)- 自定义字体图标按钮的封装与实现(ABC类)
  • React v19 革新功能:2024 年需要了解的所有信息
  • 安装Go和配置镜像
  • Web Broker(Web服务应用程序)入门教程(4)
  • K3S 全面解析
  • 从0开始本地部署大模型
  • MyBatis-Plus条件构造器:构建安全、高效的数据库查询