使用 "npx git-cz" 时如何定义 Commitizen 适配器?

How to define Commitizen adapter when using "npx git-cz"?

我正在尝试对我的项目采用常规提交 标准。在搜索 linters 和其他自动化工具时,我偶然发现了 commitizen。 我想在我的项目中使用它而不在本地安装它,也不想在全局范围内使用 NPX 和命令 npx git-cz.

这是一个known issue in commitizen

如果存储库不是提交友好的,运行 npx git-cz 将安装并使用 streamich/git-cz 适配器。

我认为这只是因为包名称冲突才有效,并且不认为您可以通过这种方式配置不同的适配器。

最接近于在没有本地 package.json 的情况下使我的存储库“commitizen-friendly”如下 --

在存储库中定义一个 .czrc 文件

{
  "path": "cz-conventional-changelog",
  "maxLineWidth": 72
}

并且在使用 npx 时,显式设置 commitizen 包:

npx --package cz-conventional-changelog --package commitizen -- cz

或者,如果您的用户可以全局安装 commitizen(例如 npm install -g commitizen cz-conventional-changelog),那么这将变为

git cz

这个似乎对我有用。希望我没有遗漏任何东西。

编辑 我确实错过了什么。这两项建议都要求同时指定或安装适配器。修改了以上内容