NodeJs完全迁移到D盘,形成绿色安装版

查看npm配置

D:\Git\AG-Admin-v2.0 (master)
$ npm config ls
; cli configs
metrics-registry = "https://registry.npm.taobao.org/"
scope = ""
user-agent = "npm/5.6.0 node/v8.11.2 win32 x64"

; userconfig C:\Users\qhong\.npmrc
cache = "D:\\Program Files\\nodejs\\node_cache"
prefix = "D:\\Program Files\\nodejs\\node_global"
registry = "https://registry.npm.taobao.org/"

; node bin location = D:\Program Files\nodejs\node.exe
; cwd = D:\Git\AG-Admin-v2.0
; HOME = C:\Users\qhong
; "npm config ls -l" to show all defaults.

D:\Git\AG-Admin-v2.0 (master)
$ npm config get userconfig
C:\Users\qhong\.npmrc

D:\Git\AG-Admin-v2.0 (master)
$ npm config get globalconfig
D:\Program Files\nodejs\node_global\etc\npmrc

现在想把所有配置都放到一起能够迁移,所以修改userconfig

直接修改

npm config set userconfig 无效,因为npm默认是读取C盘下的。

npm获取配置有6种方式,优先级由高到底。
命令行参数。 --proxy http://server:port即将proxy的值设为http://server:port。

环境变量。 以npm_config_为前缀的环境变量将会被认为是npm的配置属性。如设置proxy可以加入这样的环境变量npm_config_proxy=http://server:port。

用户配置文件。可以通过npm config get userconfig查看文件路径。如果是mac系统的话默认路径就是$HOME/.npmrc。

全局配置文件。可以通过npm config get globalconfig查看文件路径。mac系统的默认路径是/usr/local/etc/npmrc。

内置配置文件。安装npm的目录下的npmrc文件。

默认配置。 npm本身有默认配置参数,如果以上5条都没设置,则npm会使用默认配置参数。

根据找到的资料,决定添加系统变量

添加系统变量npm_config_userconfig

D:\Program Files\nodejs\.npmrc

.npmrc内的内容为:

prefix=D:\Program Files\nodejs\node_global
cache=D:\Program Files\nodejs\node_cache
registry=https://registry.npm.taobao.org/

并复制该文件到全局配置路径下。

再次查看配置:

D:\Git\AG-Admin-v2.0 (master)
$ npm config list
; cli configs
metrics-registry = "https://registry.npm.taobao.org/"
scope = ""
user-agent = "npm/5.6.0 node/v8.11.2 win32 x64"

; environment configs
userconfig = "D:\\Program Files\\nodejs\\.npmrc"

; userconfig D:\Program Files\nodejs\.npmrc
cache = "D:\\Program Files\\nodejs\\node_cache"
prefix = "D:\\Program Files\\nodejs\\node_global"
registry = "https://registry.npm.taobao.org/"

; globalconfig D:\Program Files\nodejs\node_global\etc\npmrc
cache = "D:\\Program Files\\nodejs\\node_cache"
prefix = "D:\\Program Files\\nodejs\\node_global"
registry = "https://registry.npm.taobao.org/"

; node bin location = D:\Program Files\nodejs\node.exe
; cwd = D:\Git\AG-Admin-v2.0
; HOME = C:\Users\qhong
; "npm config ls -l" to show all defaults.


D:\Git\AG-Admin-v2.0 (master)
$ npm config get prefix
D:\Program Files\nodejs\node_global

D:\Git\AG-Admin-v2.0 (master)
$ npm config get cache
D:\Program Files\nodejs\node_cache

D:\Git\AG-Admin-v2.0 (master)
$ npm config get userconfig
D:\Program Files\nodejs\.npmrc

D:\Git\AG-Admin-v2.0 (master)
$ npm config get globalconfig
D:\Program Files\nodejs\node_global\etc\npmrc

这样就可以很好的迁移,虽然要添加系统变量有点繁琐,但是可以使用Rapid工具迁移系统变量。

https://segmentfault.com/p/1210000009653830/read

https://www.cnblogs.com/huang0925/archive/2013/05/17/3083207.html

https://blog.csdn.net/henery_002/article/details/78016575

https://segmentfault.com/a/1190000010001155