CNode

npm 包覆盖安装会不会有问题?

问答
Sseason19840122发布于11 年前最后回复11 年前12 回复10165 浏览0 收藏

玩 Node.js 的同学都知道 Yeoman ,Yeoman 很多 generator 都会包含同样的插件,比如说:grunt-cli, bower,要想安装 generator 需要先安装 这些 dependencies ,而且每个 generator 依赖的版本都不一样,这样覆盖安装会不会有问题?还是需要先 npm rm -g 一个包,再重新 npm install -g 一下? 还有一个问题直接手动在 node_modules 里删除一个包和用 npm rm -g 一个包有区别吗?

查看回复

回复 (12)

S
struCoder#1·11 年前

说实话,我接触node两年了,我没有听过Yeoman 其实不需要在node_modules里删除一个package 因为他读package的依赖,都是依据package.json 最后:放心大胆的用,遇到问题就去解决问题。况且你现在只是猜想。

S
season19840122#2·11 年前
引用 struCoder说实话,我接触node两年了,我没有听过Yeoman 其实不需要在node modules里删除一个package 因为他读package的依赖,都是依据package.json 最后:放心大...

@struCoder 谢谢你的回答,Yeoman 在前端界还是很火的,我是一名前端开发。不需要删除包?那重复安装了怎么办?仁兄,直接手动在 node_modules 里删除一个包和用 npm rm -g 一个包有区别吗?

S
struCoder#3·11 年前
引用 season19840122@struCoder 谢谢你的回答,Yeoman 在前端界还是很火的,我是一名前端开发。不需要删除包?那重复安装了怎么办?仁兄,直接手动在 node modules 里删除一个包和用 npm ...

@season19840122 我一般很少动手删除package 如果想删除,我的做法就是,早根目录下的node_modules中删除要删除的package 之后在根目录下的package.json中移除所删除的包名。

你可以问问其他人。:)

I
i5ting#5·11 年前

grunt-cli 是需要clone的

S
season19840122#6·11 年前
引用 i5tinggrunt cli 是需要clone的

@i5ting 不太明白?

I
i5ting#7·11 年前

http://i5ting.github.io/How-to-write-jQuery-plugin/build/jquery.plugin.html#106

前置条件需要有nodejs和npm,请确保已安装成功:

npm install -g grunt
npm install -g grunt-init
git clone https://github.com/gruntjs/grunt-init-jquery.git ~/.grunt-init/jquery 
grunt-init jquery 
S
season19840122#8·11 年前
引用 i5tinghttp://i5ting.github.io/How to write jQuery plugin/build/jquery.plugin.html 106 前置条件需要有nodejs和np...

@i5ting Yeoman 就是基于 node 的,自然已经安装成功了,谢谢!

A
alsotang#9·11 年前

覆盖安装就好了,会自动替换的。 反正 yeoman 只是开发阶段用,也不会出什么大问题

Y
yaochun#11·11 年前

npm list -g --depth 0 这种习惯还是要有的,我一般都是 uninstall 再 install,好像有点处女座的病

至于 yeoman 接触 node 两年了没听过不应该,它再团队工程化中的:项目初始化中是必备,当然有人会觉得我自己写一个cp工具也可以 但是如果询问式安装多个类型的项目的时候就麻烦了

S
season19840122#12·11 年前
引用 yaochunnpm list g depth 0 这种习惯还是要有的,我一般都是 uninstall 再 install,好像有点处女座的病 至于 yeoman 接触 node 两年了没听过不应该,它再团...

@yaochun 看了 NPM 的 API ,npm rm 实际上就是 npm uninstall ,自己也试了下,这样卸载比较干净,可以卸载掉 .bin 目录下的包的 cmd 命令,还有就是卸载包,推荐使用 npm rm 和 npm uninstall。

参与回复
登录后即可参与回复。登录