如何撤消 npm 更新?

How to undo npm update?

有没有办法撤销命令npm update?我 运行 命令,现在我有一堆未满足的依赖项和一些错误。

我正在尝试手动重新安装并修复所有错误,但有谁知道如何从根本上恢复 npm update

您可以将 package.json 文件恢复到以前的状态(希望您仍然拥有它,或者至少记得您更改过的内容),然后再执行另一个 npm update.

[更新]

然而,一般来说,这种技术并不能保证你的整个依赖树将恢复到它原来的状态(因为依赖树中的 package.json 文件通常松散地指定依赖版本)。

如果你需要确保你的包的依赖树可以被准确地恢复,你必须使用类似 npm shrinkwrap 到 "lock down" 依赖版本(before 你发布包)。

我所做的只是 "rm -rf node_modules" 卸载更新的 node_modules 然后 "npm install" 重新安装它们;当我执行 npm update 时,我的 package.json 没有改变,这导致了所有的破坏。因此,通过删除并重新安装 node_modules,我很高兴重新开始工作。

这样做:

git log

然后复制最新的最新密钥。这将让您签出最新的提交。

git checkout "your-key" package.json
git checkout "your-key" package-lock.json 

没有 " 引号

(package-lock.json确实很有必要,但我还是喜欢做-"Just to make sure...")

你可以做一个

git status

确保您的 package.jsonpackage.lock

你也可以这样做

rm -rf node_modules/ 

这将删除 node_modules 文件夹

npm install
git checkout "your-key" package.json
git checkout "your-key" package-lock.json 

没有 " 引号

(package-lock.json 不是必须的,但我还是喜欢这样做 - "Just to make sure...")

你可以做一个

git status

我学会了在 git 中使用不同的分支,即使在单独工作时也是如此。

所以当我最近搞砸了我的 npm 时,我可以:

git stash(存储最近的更改) git switch main(切换回主分支) npm 更新(重新对齐 npm 包与 package.json 文件)

关键是找回文件,npm更新。或者从 github 中拉出文件,替换你的,然后 npm update。