有没有办法撤消命令npm update
?我运行了命令,现在我有一堆未满足的依赖项和一些错误。
我正在尝试手动重新安装并修复所有错误,但有人知道如何基本上恢复npm update
吗?
答案 0 :(得分:8)
您可以将package.json
文件恢复到之前的状态(希望您仍然拥有该文件,或者至少记住您已更改的内容),然后执行另一个npm update
。
[UPDATE]
但是,通常,此技术不能保证整个依赖关系树将恢复到其先前的状态(因为依赖关系树中的package.json
文件通常会松散地指定依赖关系版本。)
如果您需要确保您的包的依赖关系树可以完全恢复,您必须使用npm shrinkwrap之类的东西来“锁定”依赖关系版本(之前您发布包)。
答案 1 :(得分:4)
执行以下操作:
git log
然后复制最新的最新密钥。这将使您可以签出最新的提交。
git checkout "your-key" package.json
git checkout "your-key" package-lock.json
没有引号"
(package-lock.json确实是必需的,但无论如何我还是喜欢做-“只要确保...”)
您可以做
git status
确保您的package.json
和package.lock
您也可以
rm -rf node_modules/
这将删除node_modules文件夹
npm install
答案 2 :(得分:1)
我所做的只是做" rm -rf node_modules"卸载更新的node_modules然后" npm install"重新安装它们;当我执行npm update时,我的package.json没有改变,这导致了所有的破坏。因此,通过删除并重新安装node_modules,我很乐意重新开始营业。
答案 3 :(得分:0)
git checkout "your-key" package.json
git checkout "your-key" package-lock.json
不带引号
(package-lock.json
并不是必须的,但无论如何我还是喜欢这样做-“只要确保...”即可
您可以做
git status
答案 4 :(得分:0)
我已经学会了在 git 中使用不同的分支,即使是在单独工作时也是如此。
所以当我最近搞砸了我的 npm 时,我可以:
git stash(隐藏最近的更改) git switch main(切换回主分支) npm 更新(将 npm 包与 package.json 文件重新对齐)
关键是找回文件,npm update。或者从github中拉出文件,替换你的,然后npm update。