【git commit】VSCode中使用Husky & commitlint规范commit messages

用于规范git commit信息,提高团队协作效率。

Conventional Commits(约定式提交规范)

它的 message 格式如下:

<type>(<scope>): <subject>
// 空一行
<body>
// 空一行
<footer>

分别对应 Commit message 的三个部分:Header,Body 和 Footer。

Header

Header 部分只有一行,包括三个字段:type(必需)、scope(可选)和subject(必需)。

  • type: 用于说明 commit 的类型。一般有以下几种:
feat: 新增feature
fix: 修复bug
docs: 仅仅修改了文档,如readme.md
style: 仅仅是对格式进行修改,如逗号、缩进、空格等。不改变代码逻辑。
refactor: 代码重构,没有新增功能或修复bug
perf: 优化相关,如提升性能、用户体验等。
test: 测试用例,包括单元测试、集成测试。
chore: 改变构建流程、或者增加依赖库、工具等。
revert: 版本回滚
  • scope: 用于说明 commit 影响的范围,比如: views, component, utils, test…
  • subject: commit 目的的简短描述

Body

对本次 commit 修改内容的具体描述, 可以分为多行。如下图:

# body: 72-character wrapped. This should answer:
# * Why was this change necessary?
# * How does it address the problem?
# * Are there any side effects?
# initial commit

Footer

一些备注, 通常是 BREAKING CHANGE(当前代码与上一个版本不兼容) 或修复的 bug(关闭 Issue) 的链接。

方法一:使用VSCode插件

在插件库搜索Visual Studio Code Commitizen Support 安装,使用快捷键command+shift+P即可按规范提交。

方法二:安装Husky & commitlint

全局安装

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

husky继承了Git下所有的钩子,在触发钩子的时候,husky可以阻止不合法的commit,push等等

npm install husky --save-dev

在 package.json 中配置脚本:

"commitlint": {
    "extends": [
      "@commitlint/config-conventional"
    ]
  },
"husky": {
    "hooks": {
      "commit-msg": "commitlint -E HUSKY_GIT_PARAMS"
    }
 },

完成。
参考:

### 如何在 VSCode 中执行 Git Commit #### 使用命令面板进行 Git 提交 在 Visual Studio Code (VSCode) 中,可以通过内置的命令面板快速完成 Git 提交操作。按下快捷键 `Ctrl+Shift+P` 或 `Cmd+Shift+P` 打开命令面板,输入并选择 **Git: Commit** 命令即可启动提交流程[^1]。 #### 配置文件状态以便提交 在执行提交之前,需确保已将更改的文件添加到暂存区(Staging Area)。这可以在源代码管理视图中通过点击修改文件旁边的加号图标实现,或者直接右击文件后选择 **Stage Changes** 完成此操作。 #### 编写提交信息 当调用 **Git: Commit** 后,VSCode 将弹出一个输入框供用户填写此次提交的信息。按照惯例,一个好的提交消息应简洁描述改动内容以及原因[^3]。如果团队内部采用特定格式如 Angular 规范,则需要严格遵循其结构撰写提交信息。 #### 利用 Emoji 增强表达力 为了使日志更加生动有趣且易于理解,还可以结合 Emojis 来标记不同类型的变更。例如使用`:art:` 表示设计调整;`:bug:` 指代错误修复等。只需在提交信息前加上相应的 emoji 符号即可[^2]。下面是一个例子展示如何利用emojis来进行一次简单的功能更新记录: ```bash $ git commit -m &quot;:sparkles: Add new feature to enhance user experience&quot; ``` #### 自动化工具辅助规范化过程 对于追求更高效率与一致性的开发者来说,可以考虑引入 huskycommitlint 插件组合方案来自动校验每次提交是否符合预定义的标准模式。这样不仅能够减少人为失误带来的麻烦还能提升整体协作体验质量。 ### 总结 综上所述,在 VSCode 上完成一次标准的 Git 提交涉及多个环节:从确认待处理文件列表开始经过适当分类挑选最终形成正式版本入库保存整个过程中保持良好习惯尤为重要比如始终提供有意义的消息帮助他人更好理解和追踪历史变动轨迹同时也可以借助一些额外资源像定制化的 emojis 让交流变得更加直观高效最后别忘了适时采纳先进的技术手段进一步优化工作流从而达到事半功倍的效果。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值