Husky 4.x+ 无法与 Visual Studio Git 一起使用

2024-02-02

Husky 更改了 4.0.0 的路径处理 https://github.com/typicode/husky/releases/tag/v4.0.0。进行此更改后,它会在提交时引发以下错误来自视觉工作室:

husky > pre-commit (node v12.12.0)/c/path/to/repo/node_modules/.bin/lint-staged: 
line 5: cygpath: command not foundinternal/modules/cjs/loader.js:797 throw err;

^Error: Cannot find module 'C:\lint-staged\bin\lint-staged.js' 
 at Function.Module._resolveFilename (internal/modules/cjs/loader.js:794:15) 
 at Function.Module._load (internal/modules/cjs/loader.js:687:27)
 at Function.Module.runMain (internal/modules/cjs/loader.js:1025:10) 
 at internal/main /run_main_module.js:17:11 { code: 'MODULE_NOT_FOUND', requireStack: []}

husky > pre-commit hook failed 
(add --no-verify to bypass)

然而,当提交from CLI,它按预期工作。鉴于错误消息有'C:\lint-staged\bin\lint-staged.js'作为文件路径,我假设 Visual Studio 以不同的方式处理路径。

我正在尝试找到一种方法来在 Visual Studio 中完成这项工作。我处于企业环境中,因此我希望有一种方法可以将此配置包含在存储库中(而不是需要手动本地设置)。

我的 package.json 中包含了 husky 配置,如下所示

...
"husky":{
    "hooks":{ "pre-commit": "lint-staged"}
},
"lint-staged":{
    "!(*.min.*)js": "eslint --fix"
},
...

我目前正在使用:
nvm 1.1.7 与节点 12.16.1
哈士奇4.2.5
lint 阶段 10.1.3
视觉工作室2019


我找到了一个解决方案,尽管它不是完整的解释。简单的解决方法是修改您的 husky 命令,如下所示:

...
"husky":{
    "hooks":{ "pre-commit": "npx lint-staged"}
},
...

指定 NPM 命令可以纠正路径问题。我在 lint-staged github 中对 2018 年问题的回复中找到了建议,来源here https://github.com/okonet/lint-staged/issues/420.

更新:自 lint-staged v10 起,“git-add”不应再添加到 lint-staged 命令中。source https://github.com/okonet/lint-staged#v10

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Husky 4.x+ 无法与 Visual Studio Git 一起使用 的相关文章

  • 使用 GIT 自动增加 AssemblyFileVersion

    好吧 我知道这可能不是传统的 但除此之外 我使用 AssemblyFileVersion 作为我的 构建名称 字符串 它的格式如下 File Version information for an assembly consists of t
  • 我可以通过链接分享我的私人 GitHub 存储库吗?

    我在 GitHub 上的私人存储库中有一个 Java 应用程序 我想与没有帐户的人共享它 我在网站上没有找到任何与此相关的选项 有没有办法做到这一点 协作者只能是 GitHub 用户 无法在非 Github 用户之间共享私有存储库 您需要
  • git在Windows和Linux之间切换后强制刷新索引

    我有一个Windows和Linux共享的磁盘分区 格式 NTFS 它包含一个 git 存储库 约 6 7 GB 如果我只使用Windows or 只使用Linux操作 git 存储库一切正常 但是每次切换系统的时候git status命令将
  • GitHub API:标记提交所属(与 git describe --tag 并行)

    我正在使用 GitHub API 进行实验octokit https github com octokit octokit rb红宝石 我的目标是能够提取提交 SHA 所属的 标签 现在我可以使用命令行轻松地执行此操作 gt git des
  • `git rm --cached` 和 `git update-index --assume-unchanged` 之间的区别?

    我不明白之间的区别git rm cached and git update index assume unchanged 我知道git rm cached
  • 如何在 Windows 上向 git 存储库添加符号链接?

    我使用 GitHub 的电子环境编译 OS X 的二进制文件 并希望将输出添加到 git 存储库 我试过 git add error readlink sulu app Contents Frameworks Electron Framew
  • git subtree pull -P 不管 总是合并冲突

    问题 即使我没有进行任何更改 每次尝试拉入子树时 我都会遇到合并冲突 我在做什么 In 子树仓库 Make some changes git commit am Changes made git push origin master In
  • 运行“git apply”时出错

    当我尝试时 您能否告诉我如何解决 补丁不适用 错误 git 应用补丁 git apply 0001 my patch error patch failed test xml 114 error text xml patch does not
  • 无法使用 git 配置文件进行 ssh

    我知道它被问了很多次 但我无法得到我的问题的答案 我正在尝试使用配置文件 ssh 到系统 配置文件是 Host qa HostName 10 218 70 345 User user IdentityFile C Users bean ss
  • 忽略 git 中的本地配置文件

    Rails 应用程序中有一些本地文件 属于我们存储库的一部分 我希望 git 忽略它们 基本上 我希望 git 忽略我对 config environments 目录和 config application rb 文件中的任何内容所做的所有
  • Jenkins git 插件 - 有时太慢

    以下内容摘自 Jenkins 日志 00 00 03 135 gt git fetch tags progress email protected cdn cgi l email protection some org some repo
  • Visual Studio:Xamarin - 启动 Android 模拟器时出错

    遇到的问题https dotnet microsoft com learn xamarin hello world tutorial devicesetup https dotnet microsoft com learn xamarin
  • 如何使用交互式变基将提交编辑为未提交?

    我想使用交互式变基来编辑以前的提交 但是当我进入该提交的编辑模式时 所有文件都已提交 我知道我可以进行更改并修改提交 但我希望所有更改最初都未提交 暂存或以其他方式 这样我就可以对其进行编辑 就像在最初提交之前一样 这可能吗 Imagine
  • 代表 Git 存储库的数学结构是什么

    我正在学习 Git 如果我能描述一下代表 Git 存储库的数学结构 那就太好了 例如 它是一个有向无环图 它的节点代表提交 它的节点有代表分支等的标签 每个节点最多一个标签 没有标签使用两次 我知道这个描述不正确 我只是想解释我正在寻找的内
  • git pull,忽略深度,如何不拉取整个历史记录?

    我们有一个巨大的多 GB git 存储库 主要是二进制对象 克隆需要几天时间 实际的主分支 没有历史记录 只有大约 20MB 所以我想 深度为 1 的 git 克隆就是解决办法 然而 现在我需要将某人的更新拉到主服务器 我们没有分支 当我拉
  • 在 github 上的 fork 中跟踪上游的最佳实践

    摘要 对于要维护一组本地更改的上游存储库 处理长期运行跟踪的最佳实践是什么 我想让 github 上的 fork 与上游保持同步 但仍然允许清晰跟踪 fork 特有的更改 对于本次讨论 假设upstream指向主项目存储库并且origin指
  • 如何 git grep 仅一组文件扩展名

    如何执行 git grep 并将检查的文件限制为一组文件 我希望能够 grep cpp 和 h 文件的内容来查找 MyFunc 例如 git grep MyFunc hc 但是 这也匹配 c 文件和 cs 文件 Use git grep M
  • 丢失了我在 GIT 中的提交。你会不小心删除提交吗?

    我正在使用 git gui 但看不到我的分支 我知道我今天检查了一些东西 在完成提交并使用分支查看器验证后 我更改为较早的分支 我对之前的分支进行了更改 然后想返回到当前的分支 但我再也看不到它了 任何帮助都会很棒 回答你的问题 在大多数情
  • git 别名中的 AWK 语句

    我正在尝试创建一个 git 别名来以特定格式打印日志中的所有拉取请求 但是 我在使用 AWK 删除双空格时遇到问题 这是使用以下命令的 git log 的输出 git log merges grep pull request pretty
  • 在 Windows 7 上的 Sourcetree 中比较 Word docx 文件

    我一直在尝试获取在 Windows 7 上的 Sourcetree 中工作的 Word docx 文件的文本差异 我已按照此处的说明进行操作将 Microsoft Word 与 git 结合使用 http blog martinfenner

随机推荐

  • 如何防止在 React Hooks 中状态更改后重新渲染?

    我正在尝试构建一个应用程序 但问题是当我更改状态时 所有组件都会重新渲染 const App gt const showMenu setshowMenu useState false return lt gt
  • 在使用 timeDate R 包时,指定 GBNewYearsEve 时收到错误

    在寻找修改 chron 包中的 Holiday 对象的方法时 我发现了这个解决方案如何在 R 中为 is holiday chron 包定义假期 https stackoverflow com questions 7451354 how t
  • 比较 C# 中的动态对象

    比较两个任意动态对象是否相等的最佳方法是什么 例如这两个对象 I e dynamic obj1 new ExpandoObject obj1 Name Marcus obj1 Age 39 obj1 LengthInMeters 1 96
  • 如何设置 Selenium 以使用多个 Firefox 配置文件?

    我正在使用 selenium 并且想要为 3 个不同的脚本使用单独的 Firefox 配置文件 这可能吗 不确定您如何执行脚本 但是当您实例化您的脚本时webdriver对象 您可以指定一个FirefoxProfile as the fir
  • VS2015 pubxml:如何排除或消除 部分

    我需要从 Web 部署发布中排除与数据库相关的设置 我尝试删除 pubxml 文件中的该部分 但当我创建部署包时它又回来了 有什么方法可以从 Web 部署发布中排除与数据库相关的设置吗 想出了一个办法 外部化配置configsource 改
  • PInvoke 调用外部 SetWindowsHookEx 和 GetModuleHandle 时出错

    我正在尝试将程序中的 Windows 挂钩设置为外部 EXE 这将用于监视窗口的大小调整 最小化 因此我可以类似地调整程序大小 停靠到窗口 如何解决错误代码1428 and 126 below 打电话时设置WindowsHookEx使用 n
  • d3 单击时拖动跳转到其他位置 - 原点?

    试图拖动组 为什么 origin 在这里不起作用 注意到当你第一次点击它时它是如何跳跃的吗 JSFIDDLE http jsfiddle net airwwwave pob7xhuo 基于此 http bl ocks org mbostoc
  • VB.NET 中的 AES 加密字符串

    我有一个基于 Visual Basic 2010 的程序 我想使用自定义关键字和 AES 加密在我们公司网站上生成注册密钥 无论软件是否连接到互联网 这都会解锁软件 为此 我想使用我将在网站上构建的实用程序将某些用户信息 和验证代码 加密为
  • 使用数据库中存储的 unicode 字符生成 PDF 文档

    我想生成带有 unicode 字符的 PDF 文档 我存储了使用utf8 unicode ci在数据库中 这是我的桌子 language word id english sinhala tamil 这是我生成pdf的代码 但僧伽罗语和泰米尔
  • Python中对象和类有什么区别

    我是一个自学成才的 python 用户 有点 我读了很多书来加深我对Python的了解 今天 我遇到一段文字说 类和对象 所以我想知道Python中的对象和类有什么区别 我教过所有类都是对象 但在这种情况下 作者不会使用短语 类和对象 我很
  • 我的机器上的 std::promise 是否被破坏(使用 g++-mp)?

    这段代码有效吗 还是我的编译器坏了 include
  • 从 PHP 异常 __destruct() 方法发送错误报告是好主意还是坏主意?

    我正在为我的应用程序设计一个错误处理系统 我想将其基于异常 并且我希望通过电子邮件收到有关我没有预料到的每个异常的通知 我想到了一个类 class My Exception extends Exception private sendErr
  • Python将类属性导入方法本地命名空间

    我想知道是否有更简单的方法将类属性分配给方法本地命名空间 例如 在dosomething方法 我明确引用了self a and self b class test def init self self a 10 self b 20 def
  • 让日志读取高效

    我有一个用于监视数据库的 perl 脚本 我正在尝试将其编写为 powershell 脚本 在 perl 脚本中 有一个函数可以读取错误日志并过滤出重要的内容并将其返回 它还保存日志文件的当前位置 以便下次必须读取日志时 它可以从剩下的位置
  • Android:显示/隐藏状态栏/电源栏

    我正在尝试创建一个按钮 可以在平板电脑上隐藏或显示状态栏 我已经把onCreate getWindow addFlags WindowManager LayoutParams FLAG LAYOUT IN SCREEN getWindow
  • 在 C 中,检查名称与模式匹配的文件是否存在

    我见过一些在 C 语言中检查文件是否存在的方法 但是 我见过的所有方法都适用于特定的文件名 我想检查是否有任何与特定模式匹配的文件 例如 模式可能是 lockfile lockfileA lockfile txt 或 lockfile ab
  • 如何显示来自 MVC 的警报消息?

    我试图在 MVC 视图中显示警报消息 但它没有显示 这是我到目前为止所尝试过的 在控制器页面中 if dataFound ViewBag SuccessMessage The search results has been sent 在查看
  • 如何以编程方式创建基本的 UIButton?

    我怎样才能创建一个基本的UIButton以编程方式 例如在我的视图控制器中 执行时viewDidLoad方法三UIButtons 将动态创建并设置其布局或属性 这是一个 UIButton button UIButton buttonWith
  • javascript中应该如何处理多个进度条

    我有许多进度条 每个进度条都与一个 div 相关联 并使用 setTimeouts 进行更新 它如何运行的一个例子是这样的 myDiv timer setTimeout function func name data 1 Edit 根据要求
  • Husky 4.x+ 无法与 Visual Studio Git 一起使用

    Husky 更改了 4 0 0 的路径处理 https github com typicode husky releases tag v4 0 0 进行此更改后 它会在提交时引发以下错误来自视觉工作室 husky gt pre commit