针对pre-push husky hook中的package.json验证锁文件

时间:2019-06-26 17:42:08

标签: node.js git npm husky

我正在使用husky,并希望确保每次推送都包含有效的package-lock.json。从这个意义上讲,有效的前提是它满足package.json中定义的所有依赖关系。我知道如果这些依赖项不匹配,运行npm ls会出错,因此我将其添加到了pre-push钩子中。问题在于它针对我的本地副本运行npm ls而不是我的提交所执行的阶段,因此提交package.json而不是package-lock.json会导致钩子通过。

有什么方法可以对暂存的文件运行npm ls

这是我当前的沙哑配置:

"husky": {
    "hooks": {
        "pre-commit": "lint-staged",
        "pre-push": "npm run build && npm run test && npm ls"
    }
},

0 个答案:

没有答案