概括:
我正在寻找一种策略,了解如何找到并修复 package-lock.json 中的错误。此错误中断npm install
:
- 我如何弄清楚是什么安装了这个 buble 依赖项?
- 我可以简单地删除条目吗?
- 我如何确定参考值应该是多少?
细节
我想更新我的 node_modules。所以我删除了我的 node_modules 目录,然后运行npm install
. 虽然这在过去一直有效,但现在失败并出现以下错误(在 AppData\Roaming\npm-cache_logs\XXXX-debug.log 中找到):
13 silly fetchPackageMetaData error for buble@github:pemrouz/buble#fdcd2bac2c8945816b6fe3b032e49b58cc728b14 Command failed: C:\Program Files\Git\mingw64\bin\git.EXE checkout fdcd2bac2c8945816b6fe3b032e49b58cc728b14
13 silly fetchPackageMetaData fatal: reference is not a tree: fdcd2bac2c8945816b6fe3b032e49b58cc728b14
14 verbose stack Error: Command failed: C:\Program Files\Git\mingw64\bin\git.EXE checkout fdcd2bac2c8945816b6fe3b032e49b58cc728b14
14 verbose stack fatal: reference is not a tree: fdcd2bac2c8945816b6fe3b032e49b58cc728b14
14 verbose stack
14 verbose stack at ChildProcess.exithandler (child_process.js:271:12)
14 verbose stack at emitTwo (events.js:125:13)
14 verbose stack at ChildProcess.emit (events.js:213:7)
14 verbose stack at maybeClose (internal/child_process.js:927:16)
14 verbose stack at Process.ChildProcess._handle.onexit (internal/child_process.js:211:5)
我相信参考来自 /package-lock.json ,我在其中找到了 2 个使用此参考的条目。搜索网络告诉我 /package-lock.json 是由 npm 更新的。我不知道这个气泡包是如何添加到我的项目中的 - 一定是其他包的依赖项,但我缺乏找出哪个包的技能。条目如下所示:
...
"buble": {
"version": "github:pemrouz/buble#fdcd2bac2c8945816b6fe3b032e49b58cc728b14",
"requires": {
"acorn": "5.2.1",
...
在网上搜索类似问题似乎来自尝试同步其存储库的用户。这些解决方案提出了在 Gitub 中同步分叉的方法,但不适用于我的情况。据我所知,有人以某种方式更新了 Github 存储库,这打破了这个参考。
所以,我正在寻找一种策略来解决这个问题。我如何弄清楚是什么安装了这个 buble 依赖项?我可以简单地删除条目吗?我如何确定参考值应该是多少?
提前感谢任何方向