跳过“ npm版本”命令中的预提交钩子

esp*_*esp 8 javascript git pre-commit-hook npm

npm version将更改提交给package.json并创建一个标签。有没有一种方法可以防止在使用此命令时执行提交挂钩?

Det*_*iel 9

根据npm cli docs,您可以使用以下命令跳过 git 标签的生成

npm --no-git-tag-version version
Run Code Online (Sandbox Code Playgroud)


faa*_*ift 6

不确定为什么以前不存在此功能npm,但是我不久前根据我自己的需要进行了贡献。它附带了npm@5.4.0。要使用它,请commit-hooks = false在您的config 中设置config选项,.npmrc并且git在创建版本提交时,基础调用将不会运行提交挂钩。如果只想在单个版本上禁用提交挂钩,则可以运行类似于以下内容的代码:

npm version --no-commit-hooks minor
Run Code Online (Sandbox Code Playgroud)

或者:

npm version --commit-hooks false minor
Run Code Online (Sandbox Code Playgroud)

  • @loujaybee npm 处理 CLI 标志的方式允许将带有 `--no-` 前缀的布尔标志解释为等同于将标志设置为 `false`。为了简洁起见,我选择演示这种形式。但是,我添加了一个示例来演示其他命令形式以获得更大的完整性。 (2认同)