cz-git 强大的 commitizen 的适配器——我的开发心路历程
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了cz-git 强大的 commitizen 的适配器——我的开发心路历程相关的知识,希望对你有一定的参考价值。
参考技术AGithub · 中文文档
什么是 commitlint : git commit 时对于 commit message 进行规范检查的工具,保证团队的一致性。
什么是 commitizen : 基于Node.js的 git commit 命令行工具,辅助生成标准化规范化的 commit message。
什么是 adapter(适配器) : 更换 commitizen 命令行工具的 交互方式 插件。
cz-git 有什么特点
基于以上的初心我开发了 cz-git ,欢迎大家前来使用。如果觉得不错的可以给个小星星~
你要问我这达到你的目的了吗 ? 其实我还没有
挖坑,待我继续深耕,开发完成后再来揭晓
原文链接: https://www.qbenben.com/post/2022/02/27/cz-git/
适用于命令行和 Intellij 的 lint-staged + commitizen 配置
【中文标题】适用于命令行和 Intellij 的 lint-staged + commitizen 配置【英文标题】:lint-staged + commitizen configuration suitable for command-line and Intellij 【发布时间】:2019-09-12 21:37:03 【问题描述】:我正在尝试构建一个适用于命令行和 Intellij 的配置。
这是我package.json
的一部分
"config":
"commitizen":
"path": "cz-conventional-changelog"
,
"husky":
"hooks":
"pre-commit": "lint-staged",
"prepare-commit-msg": "exec < /dev/tty && git cz --hook",
"commit-msg": "validate-commit-msg"
,
"devDependencies":
"commitizen": "^3.1.1",
"cz-conventional-changelog": "^2.1.0",
"eslint": "^5.15.1",
"eslint-config-airbnb-base": "^13.1.0",
"eslint-plugin-import": "^2.16.0",
"eslint-plugin-jest": "^22.4.1",
"husky": "^1.3.1",
"lint-staged": "^8.1.5",
"standard-version": "^5.0.1",
"validate-commit": "^3.4.0"
它在命令行中运行良好,但是当使用 Intellji 提交时,它会说类似
0 个文件已提交,1 个文件未能提交:feat(asdf): asdfasd fasdf asdfa333 husky > pre-commit (node v10.13.0) 暂存更改... [开始] 暂存更改... [跳过] → 没有部分暂存文件找到... 正在运行 linters... [开始] 为 *.js 运行任务 [开始] eslint --fix [开始] eslint --fix [完成] git add [开始] git add [完成] 为 *.js 运行任务js [已完成] 正在运行 linters... [已完成] husky > prepare-commit-msg (node v10.13.0) /bin/sh: 1: 无法打开 /dev/tty: 没有这样的设备或地址 husky > prepare-commit- msg hook 失败(由于 Git 规范,无法使用 --no-verify 绕过)有解决办法吗?
【问题讨论】:
【参考方案1】:我自己也遇到过这个问题。
这个问题很容易解决,只需要在TTY失败时添加一个短路
exec < /dev/tty && git cz --hook || true # <-- Notice the '|| true'
这也是该工具官方存储库中提出的一个问题。
见:https://github.com/commitizen/cz-cli/issues/634
【讨论】:
以上是关于cz-git 强大的 commitizen 的适配器——我的开发心路历程的主要内容,如果未能解决你的问题,请参考以下文章
使用“npx git-cz”时如何定义Commitizen适配器?
cz-git 使用小技巧 —— 让 git commit 从此不再麻烦