背景:使用vue cli @vue/cli 4.5.12 创建的项目git 进行提交时可以正常的触发 pre-commit勾子,但是同样的包,同样的配置 放到另一个项目中时发现不执行。对之前的项目进行eslint 配置发现正常配完后不触发勾子,配置如下

"gitHooks": {
    "pre-commit": "lint-staged"
  },
  "lint-staged": {
    "*.{js,jsx,vue,ts,tsx}": [
      "vue-cli-service lint",
      "git add"
    ]
  }

按道说所有配置都进行了配置,依赖也装了,应当正常触发才行。

【解决办法】

打外项目下的.git 文件下的 config 文件  .git/config   查看一下配置

[core]
	repositoryformatversion = 0
	filemode = false
	bare = false
	logallrefupdates = true
	symlinks = false
	ignorecase = true
	hooksPath = .husky
[remote "origin"]
	url = git@xxxxxx.git
	fetch = +refs/heads/*:refs/remotes/origin/*

问题所在: hooksPath = .husky

.husky 目录是最新版本安装后生成的目录,可能是之前有人配置人过所以在git 配置文件下生成的记录,删掉这条 对文件进行修改后可以正常触发git pre-commit 钩子

Logo

前往低代码交流专区

更多推荐