> git -c user.useConfigOnly=true commit --quiet --allow-empty-message --file - cat: Desktop/frontend/v1-frontend/node_modules/git-commit-msg-linter/commit-msg-linter.js: No such file or directory [stdin]:1 [423C:2D00][2024-01-11T12:37:02]i001: Burn v3.10.4.4718, Windows v10.0...
这种情况下需要用到 commit-msg 钩子,我们先创建一个没有内容的 commit-msg。 npx husky add .husky/commit-msg "" 在commit-msg 脚本中,我们可以通过$1拿到提交信息。$1指向的是.git/COMMIT_EDITMSG文件,该文件保存着最后一次提交的 commit 信息。 可以拿到 commit 信息,那我们就可以在上面做一些校验工作,比如...
这里我们使用另一个git hooks:commitmsg,我们来安装validate-commit-msg检查Commit message 是否符合格式。 yarn add validate-commit-msg 在package.json中配置: "scripts": { ... "commitmsg": "validate-commit-msg" }, 如果要进行自定义配置,我们可以自建一个文件.vcmrc: { "types": ["feat", "fix", ...
"gitHooks": { "pre-commit": "lint-staged", "commit-msg": "node scripts/verify-commit-msg.js" } "lint-staged": { "*.js": [ "eslint --fix", "git add" ] } 前面提到,利用git diff,只lint当前改动的文件,lint-staged就非常准确的解决了这一问题,从这个包名,就可以看出,Run linters on ...
npx husky add.husky/commit-msg"" 在commit-msg 脚本中,我们可以通过1拿到提交信息。1 指向的是 .git/COMMIT_EDITMSG 文件,该文件保存着最后一次提交的 commit 信息。 可以拿到 commit 信息,那我们就可以在上面做一些校验工作,比如看是否符合feat: xxx的格式。这里有个问题,就是我们需要自己去声明一些规范,并且...
"commit-msg": "commitlint -e $GIT_PARAMS" } }, 1. 2. 3. 4. 5. 6. 或者在 .huskyrc 文件中 { "hooks": { ..., "commit-msg": "commitlint -e $GIT_PARAMS" } } 1. 2. 3. 4. 5. 6. 自动化生成 变更日志(Changelog)
针对暂存的git文件运行linters并且不要让垃圾代码滑入你的代码库!lint-staged的最新版本需要Node.js v6或更新版本。(在v7之前的lint-staged版本仍可与Node.js v4一起使用。) husky 在git hooks每个阶段执行脚本来避免垃圾代码的提交和push。 安装lint-staged和husky ...
pre-commit钩子:在键入提交信息前运行,可以用于eslint等 linter 的代码校验和修复 prepare-commit-msg钩子:在启动提交 commit message 编辑器之前运行。可以在该阶段生成 commit message(commitizen 在该阶段运行),这样就不会打开编辑器输入 commit message 了 ...
"linters": { "*.js": [ "eslint --ignore-path .gitignore --fix" ] }, "ignore": [] }, "pre-commit": "lint:staged", 注: git hook 有很多,commit-msg post-commit 等等 项目有 eslint 配置 例子中只校验 js 文件,有需求可以添加其他文件类型(给 lint-staged 点赞) ...
Meta: Add a post-commit commit message linter hook Browse files This should help with getting commit messages tidy before they pass through CI's commit linter :^) For this hook to work pre-commit has to be explicitly installed via: `pre-commit install --hook-type commit-msg`...