NPM 命令
npm config 命令
npm config
命令是一组设置npm
配置的命令。通过npm config -h
可以查看到所有这些命令,详见官方文档 - npm-configopen in new window。
➜ ~ npm config -h
npm config set <key> <value>
npm config get [<key>]
npm config delete <key>
npm config list [--json]
npm config edit
npm set <key> <value>
npm get [<key>]
1
2
3
4
5
6
7
8
2
3
4
5
6
7
8
npm config set
# 设置某项配置项
# npm config set <key> <value>
npm config set registry https://npm.corp.kuaishou.com/
# 或
npm config set registry=https://npm.corp.kuaishou.com/
1
2
3
4
5
2
3
4
5
npm config get
# 获取某配置项的值
# npm config get [<key>]
npm config get registry
1
2
3
2
3
# 获取通过 npm install xxx -g 安装的 xxx 文件的安装目录
# 默认情况下,
# windows 系统的路径基础部分是:%APPDATA%/npm/
# mac系统下路径基础部分是:/usr/local/
# 若是安装了 nvm 等控制 node 版本的工具,路径基础部门将改变
npm config get prefix
1
2
3
4
5
6
2
3
4
5
6
npm config delete
# 删除某配置项
# npm config delete <key>
npm config get registry
1
2
3
2
3
npm config list
# 查看 npm 的所有配置,包括默认配置
npm config ls -l
1
2
2
npm config edit
npm
提供了方便快捷的修改方式,在不知道.npmrc
这个文件的位置的情况下,也可以修改该文件。
npm config edit
1
npm set/get
npm set
和npm get
可能是npm config set
和npm config get
的简写方式,官网未说明,待验证。
npm dist-tag
详见npm-dist-tagopen in new window
查看包的发布 tag
# 语法
npm dist-tag ls [<pkg>]
# 示例
npm dist-tag ls vue
# 结果
# beta: 2.6.0-beta.3
# csp: 1.0.28-csp
# latest: 2.6.10
1
2
3
4
5
6
7
8
9
2
3
4
5
6
7
8
9
添加包的发布 tag
# 语法
npm dist-tag add <pkg>@<version> [<tag>]
1
2
2
删除包的发布 tag
# 语法
npm dist-tag rm <pkg> <tag>
1
2
2
删除已发布包的指定版本
$ npm unpublish [<pkg>][@<version>] --force
1
详见: NPM - npm-unpublishopen in new window
npm view
显示包的信息,npm view
的别名: npm info
, npm show
, npm v
。详见NPM - npm-viewopen in new window
npm view package@version
# 查看 vue@latest 的包信息
npm view vue
# output:
# vue@2.6.12 | MIT | deps: none | versions: 311
# Reactive, component-oriented view layer for modern web interfaces.
# https://github.com/vuejs/vue#readme
# keywords: vue
# dist
# .tarball: https://registry.npmjs.org/vue/-/vue-2.6.12.tgz
# .shasum: f5ebd4fa6bd2869403e29a896aed4904456c9123
# .integrity: sha512-uhmLFETqPPNyuLLbsKz6ioJ4q7AZHzD8ZVFNATNyICSZouqP2Sz0rotWQC8UNBF6VGSCs5abnKJoStA6JbCbfg==
# .unpackedSize: 3.0 MB
# maintainers:
# - yyx990803 <yyx990803@gmail.com>
# dist-tags:
# csp: 1.0.28-csp latest: 2.6.12 next: 3.0.7
# published 6 months ago by yyx990803 <yyx990803@gmail.com>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
npm view package versions
# 查看 vue 的所有历史版本
npm view vue versions
# output
# [ '0.0.0',
# '0.6.0',
# '0.7.0',
# ...
# '3.0.4',
# '3.0.5',
# '3.0.6' ]
1
2
3
4
5
6
7
8
9
10
11
12
2
3
4
5
6
7
8
9
10
11
12
npm view package repository.url
# 查看 vue 的 git 仓库地址
npm view vue repository.url
# output:
# git+https://github.com/vuejs/vue.git
1
2
3
4
5
2
3
4
5
npm view package --json
# 以 json 格式显示 vue 的所有信息
npm view vue --json
1
2
2
npm link
npm link
主要是解决在本地使用/测试未发布的 NPM 包。
第一步,在被依赖的库文件夹下执行:
cd my-utils
# 在 my-utils 目录下执行 npm link,会创建一个全局软链将 {prefix}/lib/node_modules/<package> 链接到当前目录,即
# {prefix}/lib/node_modules/my-utils --> my-utils
npm link
1
2
3
4
5
2
3
4
5
提示
创建软链时,{prefix}/lib/node_modules/<package>
里的package
的取值,是取自my-utils
目录下package.json
的name
,而不是my-utils
目录的目录名称。
第二步,在项目目录下执行:
cd my-project
# 会创建一个软链,将当前目录下的 node_modules/<package> 链接到全局安装目录下的同名目录,即
# my-project/node_modules/my-utils --> {prefix}/lib/node_modules/my-utils
npm link my-utils
1
2
3
4
5
2
3
4
5
为了方便,可将上面两步简化成一步:
cd my-project
# 下面这条命令等价于如下两条命令
# cd ../my-utils; npm link
# cd ../my-project; npm link my-utils
npm link ../my-utils
1
2
3
4
5
6
2
3
4
5
6