【问题标题】:How to keep node and npm up to date? (nodesource ppa)如何使 node 和 npm 保持最新? (节点源 ppa)
【发布时间】:2015-10-24 23:32:36
【问题描述】:

我使用的是 ubuntu 15.04。
我最近通过这个 ppa https://deb.nodesource.com/node_0.12 安装了 nodejs
使用此处的说明: https://nodesource.com/blog/nodejs-v012-iojs-and-the-nodesource-linux-repositories
npm 是作为该 ppa 的节点安装的一部分安装的。

我假设简单地运行 apt-get update 和 upgrade 将使我的 nodejs 保持在最新版本。 我的问题是,它还会让 npm 保持最新版本吗???

或者
我是否必须使用以下命令手动更新 npm:
npm install npm -g
如此处所述:https://docs.npmjs.com/getting-started/installing-node

我对此持谨慎态度,因为在安装 npm 后,我将全局 npm 包安装位置更改为我的主文件夹中的一个目录:https://docs.npmjs.com/getting-started/fixing-npm-permissions
避免全局包的 npm 权限问题。
所以我的全局包安装位置现在是:~/npm-global 而不是usr

我担心的大脑告诉我,运行该命令可能会在我的主文件夹全局 npm 安装目录中安装第二个版本的 npm。而不是更新与 ppa 中的节点一起安装的原始安装。我假设它位于usr,因为那是原始的全局包位置。

感谢您提供有关将 node 和 npm 更新到最新版本的正确方法的任何建议。
我希望我的问题很清楚,请随时要求更多澄清。谢谢!

我还必须问,在安装全局 npm 包时是否建议保留全局安装位置,而只使用sudo??
我链接的教程似乎暗示在你的主目录中创建一个全局 npm 包文件夹比使用sudo 更明智?

【问题讨论】:

    标签: linux node.js ubuntu npm


    【解决方案1】:

    使用 NodeSource PPA 将帮助您使用 apt 保持节点更新,npm 将更新到您已安装的 Node.js 版本中捆绑的最新版本。

    如果您不想用您的设置覆盖 npm upgrade,我建议将 ~/npm-global/bin 文件夹放在 /usr/bin 之前。

    另一种方法是使用nvmn 之类的版本管理器来管理多个Node.js(或io.js)版本,我个人使用的是这种方法,您不需要使用@987654328 @ 在安装包时,所有东西(甚至节点)都将安装在你的主文件夹中。

    【讨论】:

    • 感谢您的回答。那么使用 apt-get update 和 upgrade 将使 node 和 npm 都保持最新版本吗?由于 npm 是在 nodesource ppa 中与 node 一起打包的?
    • 它将保持node 为最新版本,npm 保持在node 捆绑的版本中,请记住,这并不总是可用的最新npm 版本。为了澄清 npm 总是与 core 包中的 node 捆绑在一起,我们(nodesource)默认情况下不会将 npm 与 node 捆绑在一起
    • 感谢您的澄清。最后一个问题,如果我使用npm install npm -g 更新 npm,同时使用 OP 中描述的设置,并且在我的主目录中使用全局包。 npm 更新会成功还是只会安装另一个 npm 副本?这次在我的主目录中,而不是 usr
    • 是否可以,只需将 npm 全局包留在 usr 中并使用 sudo 来绕过权限?因为这样可以避免在尝试更新时在主目录中再次意外安装 npm。这个视频:docs.npmjs.com/getting-started/fixing-npm-permissions 让使用 sudo 安装和更新全局包似乎是一件坏事,但对我来说这似乎是最简单的方法
    【解决方案2】:

    按照这个答案的描述使用nvm

    https://askubuntu.com/a/605813/107509

    我一开始就尽量避免使用这个解决方案,但是 nodejs 现在很难安装,而且我见过的大多数简单的curl 解决方案都不适合我。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-01-04
      • 1970-01-01
      • 1970-01-01
      • 2018-11-23
      • 1970-01-01
      • 2021-12-02
      • 1970-01-01
      • 2016-04-07
      相关资源
      最近更新 更多