通过 husky 在 docker 中运行 pre-commit 和 pre-push 命令

Posted

技术标签:

【中文标题】通过 husky 在 docker 中运行 pre-commit 和 pre-push 命令【英文标题】:Run pre-commit and pre-push commands in docker via husky 【发布时间】:2019-05-22 04:09:00 【问题描述】:

如何通过 Husky 在 Docker 内部运行 git-hook 命令(如 yarn test)?

【问题讨论】:

【参考方案1】:

想通了。这进入package.json

"husky": 
  "hooks": 
    "pre-commit": "docker run --rm -v \"$PWD\":/usr/src/app -w /usr/src/app node:alpine yarn test",
    "pre-push": "docker run --rm -v \"$PWD\":/usr/src/app -w /usr/src/app node:alpine yarn test"
  

【讨论】:

@lewislbr,是的,您需要在本地安装 node。此外,由于husky 依赖于node_modules,因此您需要安装依赖项。因此,忽略了应用容器化的全部意义。

以上是关于通过 husky 在 docker 中运行 pre-commit 和 pre-push 命令的主要内容,如果未能解决你的问题,请参考以下文章

运行预提交 husky 脚本时未找到 Npx

Git: husky > pre-commit (node v14.16.1)

husky > pre-commit hook 失败(添加 --no-verify 绕过)

无法 git 提交

Husky 预提交钩子和压缩提交

代码提交规范 husky + commitlint + lint-staged