要点:
我正在寻找一个关于如何在package-lock.json中找到并修复错误的策略。此错误会导致npm install
:
详情
我想更新我的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存储库,这打破了这个参考。
所以,我正在寻找一个如何解决这个问题的策略。我如何弄清楚这个布尔依赖的安装?我可以简单地删除条目吗?我如何弄清楚参考值应该是什么?
提前感谢任何方向
答案 0 :(得分:1)
我相信你可以运行npm install --no-optional buble
,这应该会阻止安装可选的依赖项。在执行此操作之前,您应该删除旧的node_modules并重新开始。
答案 1 :(得分:1)
我得到了这个工作。我所做的是在我的package-lock.json文件中删除所有对buble的引用(当然是在制作备份副本之后)。然后我删除了我的node_modules目录,npm cache clear --force
,然后是npm install
。 npm能够重新加载所有内容,并且似乎已经使用新的参考值将buble包重新添加到我的package-lock.json中。
我不知道所有这些步骤是否必要;最后我变得绝望,准备尝试一切。希望这有助于其他人!
答案 2 :(得分:1)
我的问题是我没有GIT github安装在我的机器上。您需要安装Git,因此npm install可以使用它来下载软件包
答案 3 :(得分:0)
我有类似的问题,但不完全相同。当我尝试在公司网络环境中进行npm安装时,出现了此问题。某些SSH和HTTPS被阻止。错误消息是
npm sill pacote Retrying git command: ls-remote -h -t https://github.com/pemrouz/buble.git attempt # 6
npm sill pacote Retrying git command: ls-remote -h -t https://github.com/pemrouz/buble.git attempt # 7
我删除了package-lock.json并再次进行npm安装。一切都很好。