如何仅在子目录中运行赫斯基预提交

时间:2018-12-20 12:54:07

标签: git githooks git-husky husky

我们有一个企业应用程序,其文件夹结构如下:

/project
  .git
  /sub1
    ...Java project
  /sub2
    package.json
    ...Javascript Backbone project
  /sub3
    ...Java project
  /sub4
    ...Java project
  /sub5
    package.json
    ...Javascript React project

我目前在sub2和sub5项目中都设置了Husky,这会引起冲突(每当切换项目时都需要安装npm)。另外,Java开发人员报告说,当他们在项目sub1,sub3和sub4中提交代码时,正在执行Husky git钩子。

如果您在提交时位于某个文件夹中,是否只能运行挂钩?

2 个答案:

答案 0 :(得分:1)

  

如果您在提交时位于某个文件夹中,是否只能运行挂钩?

否,但是挂钩本身可以确定运行时所在的目录。这没有正确记录,但是在@GetMapping("/sse") @PreAuthorize("hasRole('ADMIN')") public SseEmitter serverSentEvent() throws IOException { SseEmitter emitter = new SseEmitter(2592000000L); emitter.send("OK"); return emitter; } GIT_PREFIXchdir目录的Git $GIT_WORK_TREE -s之前的环境中设置了$GIT_DIR。 (自Git 1.7.8版以来就是这种情况。)

答案 1 :(得分:1)

我遇到了同样的问题。我通过将husky安装在主目录中来修复它。
我的设置:

/project
    .git
    package.json
    /frontend
        package.json
    /frontend-admin
        package.json

plt.imshow((df*0), aspect='auto') 中:

/project/package.json

您的子目录应具有lint脚本才能执行。
当其中一个脚本崩溃时,赫斯基会给出报告并立即中止。