配置

关于 npm 配置,你可能想知道的更多

描述

npm 从以下来源获取其配置值,按优先级排序:

命令行标志

--foo bar 放在命令行上会将 foo 配置参数设置为 "bar"-- 参数告诉 cli 解析器停止读取标志。 在不指定任何值的情况下使用 --flag 会将值设置为 true

示例: --flag1 --flag2 会将两个配置参数设置为 true,而 --flag1 --flag2 bar 会将 flag1 设置为 true,将 flag2 设置为 bar。 最后,--flag1 --flag2 -- bar 将两个配置参数都设置为 true,并将 bar 作为命令参数。

环境变量

任何以 npm_config_ 开头的环境变量都将被解释为配置参数。 例如,将 npm_config_foo=bar 放入你的环境中会将 foo 配置参数设置为 bar。 任何未赋值的环境配置都将被赋值为 true。 配置值不区分大小写,因此 NPM_CONFIG_FOO=bar 的工作方式相同。 但是,请注意,在 scripts 内部,npm 将设置自己的环境变量,并且 Node 会更喜欢那些小写版本,而不是你可能设置的任何大写版本。 详情见 此问题

请注意,你需要使用下划线而不是破折号,因此 --allow-same-version 将变为 npm_config_allow_same_version=true

npmrc 文件

四个相关文件是:

  • 每个项目的配置文件 (/path/to/my/project/.npmrc)
  • 每个用户的配置文件(默认为 $HOME/.npmrc;可通过 CLI 选项 --userconfig 或环境变量 $NPM_CONFIG_USERCONFIG 进行配置)
  • 全局配置文件(默认为 $PREFIX/etc/npmrc;可通过 CLI 选项 --globalconfig 或环境变量 $NPM_CONFIG_GLOBALCONFIG 进行配置)
  • npm 的内置配置文件(/path/to/npm/npmrc

有关详细信息,请参阅 npmrc

默认配置

运行 npm config ls -l 以查看一组 npm 内部的配置参数,如果未指定其他参数,则为默认值。

速记和其他 CLI 细节

在命令行上解析以下简写:

  • -v--version
  • -h-?--help-H--usage
  • -s, --silent: --loglevel silent
  • -q, --quiet: --loglevel warn
  • -d--loglevel info
  • -dd, --verbose: --loglevel verbose
  • -ddd--loglevel silly
  • -g--global
  • -C--prefix
  • -l--long
  • -m--message
  • -p, --porcelain: --parseable
  • -reg--registry
  • -f--force
  • -desc--description
  • -S--save
  • -P--save-prod
  • -D--save-dev
  • -O--save-optional
  • -B--save-bundle
  • -E--save-exact
  • -y--yes
  • -n--yes false
  • llla 命令: ls --long

如果指定的配置参数明确地解析为已知的配置参数,则将其扩展为该配置参数。 例如:

npm ls --par
# same as:
npm ls --parseable

如果多个单字符速记串在一起,并且生成的组合明确地不是某个其他配置参数,那么它会扩展为它的各个组成部分。 例如:

npm ls -gpld
# same as:
npm ls --global --parseable --long --loglevel info

每包配置设置

运行脚本时(参见 scripts),如果存在 <name>[@<version>]:<key> 的配置参数,则 package.json "配置" 键在环境中被覆盖。 例如,如果 package.json 有这个:

{ "name" : "foo"
, "config" : { "port" : "8080" }
, "scripts" : { "start" : "node server.js" } }

server.js 是这样的:

http.createServer(...).listen(process.env.npm_package_config_port)

然后用户可以通过执行以下操作来改变行为:

npm config set foo:port 80

有关详细信息,请参阅 package.json

配置设置

access

  • 默认值: restricted
  • 类型: 使用权

发布范围包时,访问级别默认为 restricted。 如果你希望你的范围包可公开查看(和可安装),请设置 --access=publicaccess 的唯一有效值是 publicrestricted。 无范围的包始终具有 public 的访问级别。

allow-same-version

  • 默认值: false
  • 类型: 布尔值

防止在使用 npm version 将新版本设置为与当前版本相同的值时引发错误。

always-auth

  • 默认值: false
  • 类型: 布尔值

强制 npm 在访问注册表时始终要求身份验证,即使对于 GET 请求也是如此。

also

  • 默认值: null
  • 类型: 字符串

当 "dev" 或 "development" 并运行本地 npm shrinkwrapnpm outdatednpm update 时,是 --dev 的别名。

audit

  • 默认值: true
  • 类型: 布尔值

当 "true" 与 npm install 一起提交审计报告时,会运行到默认注册表和为范围配置的所有注册表。 有关提交内容的详细信息,请参阅 npm audit 的文档。

audit-level

  • 默认值: "low"
  • 类型: 'low', 'moderate', 'high', 'critical'

npm audit 以非零退出代码退出的最低漏洞级别。

auth-type

  • 默认值: 'legacy'
  • 类型: 'legacy', 'sso', 'saml', 'oauth'

adduser/login 使用什么身份验证策略。

before

  • 别名: 享受
  • 默认值: null
  • 类型: 日期

如果传递给 npm install,将重建 npm 树,以便只安装 在或之前--before 时间可用的版本。 如果当前的直接依赖集没有可用的版本,则该命令将出错。

如果请求的版本是 dist-tag 并且给定的标签没有通过 --before 过滤器,则将使用小于或等于该标签的最新版本。 例如,foo@latest 可能会安装 foo@1.2,即使 latest2.0

  • 默认值: true
  • 类型: 布尔值

告诉 npm 为包的可执行文件创建符号链接(或 Windows 上的 .cmd 垫片)。

设置为 false 使其不执行此操作。 这可以用来解决某些文件系统不支持符号链接的事实,即使在表面上是 Unix 系统上也是如此。

browser

  • 默认值: OS X: "open",Windows: "start"、其他: "xdg-open"
  • 类型: 字符串

npm docs 命令调用的浏览器打开网站。

ca

  • 默认值: npm CA 证书
  • 类型: 字符串、数组或 null

受信任的证书颁发机构签名证书,可用于与注册表的 SSL 连接。 值应采用 PEM 格式(Windows 将其称为 "Base-64 编码的 X.509 (.CER)"),并用字符串 "\n" 替换换行符。 例如:

ca="-----BEGIN CERTIFICATE-----\nXXXX\nXXXX\n-----END CERTIFICATE-----"

设置为 null 仅允许 "known" 注册商,或设置为特定 CA 证书以仅信任该特定签名机构。

通过指定证书数组可以信任多个 CA:

ca[]="..."
ca[]="..."

另请参阅 strict-ssl 配置。

cafile

  • 默认值: null
  • 类型: 路径

包含一个或多个证书颁发机构签名证书的文件的路径。 类似于 ca 设置,但允许多个 CA,以及将 CA 信息存储在磁盘上的文件中。

cache

  • 默认值: Windows: %AppData%\npm-cache,Posix: ~/.npm
  • 类型: 路径

npm 的缓存目录的位置。 见 npm cache

cache-lock-stale

  • 默认值: 60000(1 分钟)
  • 类型: 数字

缓存文件夹锁定文件被视为过时之前的毫秒数。

cache-lock-retries

  • 默认值: 10
  • 类型: 数字

重试获取缓存文件夹锁定文件锁定的次数。

cache-lock-wait

  • 默认值: 10000(10 秒)
  • 类型: 数字

等待缓存锁定文件过期的毫秒数。

cache-max

  • 默认值: 无穷
  • 类型: 数字

DEPRECATED: 此选项已被 --prefer-online 弃用。

--cache-max=0--prefer-online 的别名。

cache-min

  • 默认值: 10
  • 类型: 数字

DEPRECATED: 此选项已被 --prefer-offline 弃用。

--cache-min=9999 (or bigger)--prefer-offline 的别名。

cert

  • 默认值: null
  • 类型: 字符串

访问注册表时要通过的客户端证书。 值应采用 PEM 格式(Windows 将其称为 "Base-64 编码的 X.509 (.CER)"),并用字符串 "\n" 替换换行符。 例如:

cert="-----BEGIN CERTIFICATE-----\nXXXX\nXXXX\n-----END CERTIFICATE-----"

它不是证书文件的路径(并且没有 "certfile" 选项)。

cidr

  • 默认值: null
  • 类型: 字符串,数组,null

这是使用 npm token create 命令配置受限访问令牌时要使用的 CIDR 地址列表。

color

  • 默认值: true
  • 类型: 布尔值或 "always"

如果为 false,则从不显示颜色。 如果 "always" 则始终显示颜色。 如果为真,则仅打印 tty 文件描述符的颜色代码。

也可以使用环境更改此选项: 当环境变量 NO_COLOR 设置为任何值时,颜色将被禁用。

depth

  • 默认值: 无穷
  • 类型: 数字

npm lsnpm cache lsnpm outdated 递归目录时的深度。

对于 npm outdatedInfinity 的设置将被视为 0,因为它提供了更多有用的信息。 要显示所有包和依赖的过时状态,请使用大整数值,例如 npm outdated --depth 9999

description

  • 默认值: true
  • 类型: 布尔值

显示 npm search 中的描述

dev

  • 默认值: false
  • 类型: 布尔值

安装 dev-dependencies 和包。

dry-run

  • 默认值: false
  • 类型: 布尔值

表示你不希望 npm 进行任何更改,并且它应该只报告它会做的事情。 这可以传递到任何修改本地安装的命令中,例如,installupdatededupeuninstall。 某些网络相关命令目前不支持此功能,例如 dist-tagsowner 等。

editor

  • 默认值: 如果设置了 EDITOR 环境变量,或在 Posix 上为 "vi",或在 Windows 上为 "notepad"
  • 类型: 路径

npm editnpm config edit 运行的命令。

engine-strict

  • 默认值: false
  • 类型: 布尔值

如果设置为 true,那么 npm 将顽固地拒绝安装(甚至考虑安装)任何声称与当前 Node.js 版本不兼容的包。

force

  • 默认值: false
  • 类型: 布尔值

使各种命令更加有力。

  • 生命周期脚本失败不会阻止进度。
  • 发布 clobbers 以前发布的版本。
  • 从注册表请求时跳过缓存。
  • 防止检查破坏非 npm 文件。

format-package-lock

  • 默认值: true
  • 类型: 布尔值

package-lock.jsonnpm-shrinkwrap.json 格式化为人类可读的文件。

fetch-retries

  • 默认值: 2 * 类型: 数字

从注册表获取包时要使用的 retry 模块的 "retries" 配置。

fetch-retry-factor

  • 默认值: 10
  • 类型: 数字

获取包时要使用的 retry 模块的 "factor" 配置。

fetch-retry-mintimeout

  • 默认值: 10000(10 秒)
  • 类型: 数字

获取包时要使用的 retry 模块的 "minTimeout" 配置。

fetch-retry-maxtimeout

  • 默认值: 60000(1 分钟)
  • 类型: 数字

获取包时要使用的 retry 模块的 "maxTimeout" 配置。

fund

  • 默认值: true
  • 类型: 布尔值

当 "true" 在每个 npm install 的末尾显示消息时,确认正在寻找资金的依赖的数量。 详见 npm fund

git

  • 默认值: "git"
  • 类型: 字符串

用于 git 命令的命令。 如果计算机上安装了 git,但不在 PATH 中,则将其设置为 git 二进制文件的完整路径。

git-tag-version

  • 默认值: true
  • 类型: 布尔值

使用 npm version 命令时标记提交。

commit-hooks

  • 默认值: true
  • 类型: 布尔值

使用 npm version 命令时运行 git commit hooks。

global

  • 默认值: false
  • 类型: 布尔值

在 "global" 模式下运行,以便将包安装到 prefix 文件夹而不是当前工作目录。 有关行为差异的更多信息,请参见 文件夹

  • 包安装到 {prefix}/lib/node_modules 文件夹,而不是当前工作目录。
  • bin 文件链接到 {prefix}/bin
  • 手册页链接到 {prefix}/share/man

globalconfig

  • 默认值: {prefix}/etc/npmrc
  • 类型: 路径

为全局配置选项读取的配置文件。

global-style

  • 默认值: false
  • 类型: 布尔值

使 npm 以与全局 node_modules 文件夹相同的布局将包安装到本地 node_modules 文件夹中。 只有你的直接依赖将显示在 node_modules 中,并且它们所依赖的所有内容都将展平在它们的 node_modules 文件夹中。 这显然会消除一些数据去重。 如果与 legacy-bundling 一起使用,则首选 legacy-bundling

group

  • 默认值: 当前进程的 GID
  • 类型: 字符串或数字

以 root 用户身份在全局模式下运行包脚本时使用的组。

heading

  • 默认值: "npm"
  • 类型: 字符串

启动所有调试日志输出的字符串。

https-proxy

  • 默认值: null
  • 类型: 网址

用于传出 https 请求的代理。 如果设置了 HTTPS_PROXYhttps_proxyHTTP_PROXYhttp_proxy 环境变量,则底层 request 库将遵循代理设置。

if-present

  • 默认值: false
  • 类型: 布尔值

如果为 true,当为 package.jsonscripts 部分中未定义的脚本调用 run-script 时,npm 将不会退出并返回错误代码。 当需要在脚本存在时选择性地运行脚本并在脚本失败时运行失败时,可以使用此选项。 这很有用,例如,在运行可能仅适用于其他通用 CI 设置中的某些构建的脚本时。

ignore-prepublish

  • 默认值: false
  • 类型: 布尔值

如果为 true,npm 将不会运行 prepublish 脚本。

ignore-scripts

  • 默认值: false
  • 类型: 布尔值

如果为 true,npm 不会运行 package.json 文件中指定的脚本。

init-module

  • 默认值: ~/.npm-init.js
  • 类型: 路径

将由 npm init 命令加载的模块。 有关详细信息,请参阅 init-package-json 模块的文档或 npm init

init-author-name

  • 默认值: ""
  • 类型: 字符串

默认情况下,应该使用值 npm init 作为包作者的名称。

init-author-email

  • 默认值: ""
  • 类型: 字符串

默认情况下,值 npm init 应用于包作者的电子邮件。

init-author-url

  • 默认值: ""
  • 类型: 字符串

默认情况下,包作者的主页应使用值 npm init

init-license

  • 默认值: "ISC"
  • 类型: 字符串

默认情况下,值 npm init 应用于包许可证。

init-version

  • 默认值: "1.0.0"
  • 类型: semver

如果 package.json 中尚未设置,npm init 应该默认使用的值作为包版本号。

json

  • 默认值: false
  • 类型: 布尔值

是否输出 JSON 数据,而不是正常输出。

此功能目前处于试验阶段,许多命令的输出数据结构要么尚未在 JSON 中实现,要么可能会发生变化。 目前只有 npm ls --jsonnpm search --json 的输出有效。

key

  • 默认值: null
  • 类型: 字符串

访问注册表时要传递的客户端密钥。 值应采用 PEM 格式,并用字符串 "\n" 替换换行符。 例如:

key="-----BEGIN PRIVATE KEY-----\nXXXX\nXXXX\n-----END PRIVATE KEY-----"

它不是密钥文件的路径(并且没有 "keyfile" 选项)。

legacy-bundling

  • 默认值: false
  • 类型: 布尔值

使 npm 安装包,以便 1.4 之前的 npm 版本(例如 node 0.8 中包含的版本)可以安装包。 这消除了所有自动数据去重。 如果与 global-style 一起使用,则首选此选项。

  • 默认值: false
  • 类型: 布尔值

如果为 true,则如果有合适的全局安装包,本地安装将链接。

请注意,这意味着本地安装可能会导致将事物同时安装到全局空间中。 仅当满足以下两个条件之一时才完成链接:

  • 该包尚未全局安装,或者
  • 全局安装的版本与本地安装的版本相同。

local-address

  • 默认值: undefined
  • 类型: IP 地址

连接到 npm 注册表时使用的本地接口的 IP 地址。 在 0.12 之前的 Node 版本中必须是 IPv4。

loglevel

  • 默认值: "notice"
  • 类型: 字符串
  • 值: "silent", "错误", "warn", "notice", "http", "timing", "info", "verbose", "silly"

要报告的日志级别。 失败时,所有日志都写入当前工作目录中的 npm-debug.log

显示比设置更高级别的任何日志。 默认值为 "notice"。

logstream

  • 默认值: process.stderr
  • 类型: 流

这是在运行时传递给 npmlog 模块的流。

它不能从命令行设置,但如果你以编程方式使用 npm,你可能希望将日志发送到 stderr 以外的其他地方。

如果 color 配置设置为 true,则此流将接收彩色输出(如果它是 TTY)。

logs-max

  • 默认值: 10
  • 类型: 数字

要存储的最大日志文件数。

long

  • 默认值: false
  • 类型: 布尔值

npm lsnpm search 中显示扩展信息。

maxsockets

  • 默认值: 50
  • 类型: 数字

每个源使用的最大连接数(协议/主机/端口组合)。 传递给用于发出请求的 http Agent

message

  • 默认值: "%s"
  • 类型: 字符串

npm version 在创建版本提交时使用的提交消息。

消息中的任何 "%s" 都将替换为版本号。

metrics-registry

如果 send-metrics 为真,你希望将 cli 指标发送到的注册表。

node-options

  • 默认值: null
  • 类型: 字符串

通过 NODE_OPTIONS 环境变量传递给 Node.js 的选项。 这不会影响 npm 本身的执行方式,但会影响生命周期脚本的调用方式。

node-version

  • 默认值: process.version
  • 类型: semver 或 false

检查包的 engines 映射时使用的 node 版本。

noproxy

  • 默认值: null
  • 类型: 字符串或数组

不应使用代理的逗号分隔字符串或域扩展数组。

offline

  • 默认值: false
  • 类型: 布尔值

强制离线模式: 安装期间不会完成任何网络请求。 要允许 CLI 填充缺失的缓存数据,请参阅 --prefer-offline

onload-script

  • 默认值: false
  • 类型: 路径

npm 加载时到 require() 的 node 模块。 对编程使用很有用。

only

  • 默认值: null
  • 类型: 字符串

当 "dev" 或 "development" 并在没有任何参数的情况下运行本地 npm install 时,仅安装 devDependencies(及其依赖)。

当 "dev" 或 "development" 并运行本地 npm lsnpm outdatednpm update 时,是 --dev 的别名。

当 "prod" 或 "production" 并在没有任何参数的情况下运行本地 npm install 时,仅安装非 devDependencies(及其依赖)。

当 "prod" 或 "production" 并运行本地 npm lsnpm outdatednpm update 时,是 --production 的别名。

optional

  • 默认值: true
  • 类型: 布尔值

尝试在 optionalDependencies 对象中安装包。 请注意,如果这些包安装失败,整个安装过程不会中止。

otp

  • 默认值: null
  • 类型: 数字

这是来自双重身份验证器的一次性密码。 使用 npm access 发布或更改包权限时需要它。

package-lock

  • 默认值: true
  • 类型: 布尔值

如果设置为 false,则安装时忽略 package-lock.json 文件。 如果 save 为真,这也将阻止写入 package-lock.json

当 package package-locks 被禁用时,无关模块的自动修剪也将被禁用。 要删除禁用包锁的无关模块,请使用 npm prune

此选项是 --shrinkwrap 的别名。

package-lock-only

  • 默认值: false
  • 类型: 布尔值

如果设置为 true,它将仅更新 package-lock.json,而不是检查 node_modules 并下载依赖。

parseable

  • 默认值: false
  • 类型: 布尔值

从写入标准输出的命令输出可解析的结果。 对于 npm search,这将是制表符分隔的表格格式。

prefer-offline

  • 默认值: false
  • 类型: 布尔值

如果为 true,将绕过缓存数据的过时检查,但将从服务器请求丢失的数据。 要强制完全离线模式,请使用 --offline

此选项实际上等效于 --cache-min=9999999

prefer-online

  • 默认值: false
  • 类型: 布尔值

如果为 true,将强制检查缓存数据的时效性,使 CLI 立即查找更新,即使是新的包数据也是如此。

prefix

安装全局项目的位置。 如果在命令行上设置,则强制非全局命令在指定文件夹中运行。

preid

  • 默认值: ""
  • 类型: 字符串

"预发布标识符" 用作 semver 的 "prerelease" 部分的前缀。 就像 1.2.0-rc.8 中的 rc

production

  • 默认值: false
  • 类型: 布尔值

设置为 true 以在 "production" 模式下运行。

  1. 在没有任何参数的情况下运行本地 npm install 时,不会在最顶层安装 devDependencies。
  2. 为生命周期脚本设置 NODE_ENV="production"。

progress

  • 默认值: true,除非设置了 TRAVIS 或 CI 环境变量。
  • 类型: 布尔值

当设置为 true 时,如果 process.stderr 是 TTY,npm 将在时间密集型操作期间显示进度条。

设置为 false 以抑制进度条。

proxy

  • 默认值: null
  • 类型: 网址

用于传出 http 请求的代理。 如果设置了 HTTP_PROXYhttp_proxy 环境变量,则底层 request 库将遵循代理设置。

read-only

  • 默认值: false
  • 类型: 布尔值

这用于在使用 npm token create 命令配置受限访问令牌时将令牌标记为无法发布。

rebuild-bundle

  • 默认值: true
  • 类型: 布尔值

安装后重建打包的依赖。

注册表

npm 包注册表的基本 URL。

rollback

  • 默认值: true
  • 类型: 布尔值

删除失败的安装。

save

  • 默认值: true
  • 类型: 布尔值

将已安装的包作为依赖保存到 package.json 文件中。

当与 npm rm 命令一起使用时,它会将其从 dependencies 对象中删除。

仅当已经存在 package.json 文件时才有效。

save-bundle

  • 默认值: false
  • 类型: 布尔值

如果在安装时使用 --save--save-dev--save-optional 保存一个包,那么也将它放在 bundleDependencies 列表中。

当与 npm rm 命令一起使用时,它会将其从 bundledDependencies 列表中删除。

save-prod

  • 默认值: false
  • 类型: 布尔值

确保将一个包专门保存到 dependencies 中。 如果包已存在于 devDependenciesoptionalDependencies 中,但你想将其移动为生产部门,这将非常有用。 如果 --save 为真,并且 --save-dev--save-optional 都不为真,这也是默认行为。

save-dev

  • 默认值: false
  • 类型: 布尔值

将已安装的包保存到 package.json 文件中,名称为 devDependencies

当与 npm rm 命令一起使用时,它会将其从 devDependencies 对象中删除。

仅当已经存在 package.json 文件时才有效。

save-exact

  • 默认值: false
  • 类型: 布尔值

使用 --save--save-dev--save-optional 保存到 package.json 的依赖将配置一个确切的版本,而不是使用 npm 的默认 semver 范围运算符。

save-optional

  • 默认值: false
  • 类型: 布尔值

将已安装的包保存到 package.json 文件中作为 optionalDependencies。

当与 npm rm 命令一起使用时,它会将其从 devDependencies 对象中删除。

仅当已经存在 package.json 文件时才有效。

save-prefix

  • 默认值: '^* 类型: 字符串

配置通过 --save--save-dev 安装到 package.json 文件的包版本如何获得前缀。

例如,如果一个包的版本为 1.2.3,默认情况下其版本设置为 ^1.2.3,允许对该包进行小幅升级,但在 npm config set save-prefix='~' 之后,它将设置为 ~1.2.3,仅允许补丁升级。

scope

  • 默认值: 当前项目的范围(如果有)或 ""
  • 类型: 字符串

将操作与范围注册表的作用域相关联。 首次登录私有注册表时有用: npm login --scope=@organization --registry=registry.organization.com,这将导致 @organization 映射到注册表,以便将来安装根据模式 @organization/package 指定的包。

script-shell

  • 默认值: null
  • 类型: 路径

用于脚本的 shell 与 npm run 命令一起运行。

scripts-prepend-node-path

  • 默认值: "warn-only"
  • 类型: 布尔值,"auto""warn-only"

如果设置为 true,则在运行脚本时将当前 node 可执行文件所在的目录添加到 PATH 环境变量中,即使这意味着 npm 将调用与其正在运行的可执行文件不同的 node 可执行文件。

如果设置为 false,则永远不要修改 PATH

如果设置为 "warn-only",则永远不要修改 PATH,但如果 npm 认为你可能希望使用 true 运行它,则打印警告,例如因为 PATH 中的 node 可执行文件不是调用 npm 的那个。

如果设置为 auto,则仅当调用 npmnode 可执行文件与在 PATH 上首先找到的可执行文件不同时,才将该目录添加到 PATH 环境变量中。

searchexclude

  • 默认值: ""
  • 类型: 字符串

限制搜索结果的空格分隔选项。

searchopts

  • 默认值: ""
  • 类型: 字符串

始终传递给搜索的空格分隔选项。

searchlimit

  • 默认值: 20
  • 类型: 数字

限制搜索结果的项目数。 完全不适用于旧版搜索。

searchstaleness

  • 默认值: 900(15 分钟)
  • 类型: 数字

如果使用旧版搜索端点,则在发出另一个注册表请求之前缓存的年龄(以秒为单位)。

send-metrics

  • 默认值: false
  • 类型: 布尔值

如果为真,成功/失败指标将报告给存储在 metrics-registry 中的注册表。 这些请求包含 npm CLI 的成功和失败运行次数以及收集这些计数的时间段。 这些请求中不包含任何识别信息。

shell

  • 默认值: SHELL 环境变量,或 Posix 上的 "bash",或 Windows 上的 "cmd"
  • 类型: 路径

npm explore 命令运行的 shell。

shrinkwrap

  • 默认值: true
  • 类型: 布尔值

如果设置为 false,则安装时忽略 npm-shrinkwrap.json 文件。 如果 save 为真,这也将阻止写入 npm-shrinkwrap.json

此选项是 --package-lock 的别名。

sign-git-commit

  • 默认值: false
  • 类型: 布尔值

如果设置为 true,则 npm version 命令将使用 -S 提交新的包版本以添加签名。

请注意,git 要求你在 git 配置中设置 GPG 密钥才能正常工作。

sign-git-tag

  • 默认值: false
  • 类型: 布尔值

如果设置为 true,则 npm version 命令将使用 -s 标记版本以添加签名。

请注意,git 要求你在 git 配置中设置 GPG 密钥才能正常工作。

sso-poll-frequency

  • 默认值: 500
  • 类型: 数字

与启用 SSO 的 auth-type 一起使用时,配置在用户完成身份验证时轮询注册表的频率。

sso-type

  • 默认值: 'oauth'
  • 类型: 'oauth'、 'saml' 或空

如果为 --auth-type=sso,则为要使用的 SSO 类型的类型。

strict-ssl

  • 默认值: true
  • 类型: 布尔值

通过 https 向注册表发出请求时是否进行 SSL 密钥验证。

另请参阅 ca 配置。

tag

  • 默认值: 最新的
  • 类型: 字符串

如果你让 npm 安装一个包并且没有告诉它一个特定的版本,那么它会安装指定的标签。

如果没有给出显式标记,则还有添加到 npm tag 命令指定的 package@version 的标记。

tag-version-prefix

  • 默认值: "v"
  • 类型: 字符串

如果设置,则在使用 npm-version 执行版本增量时更改标记新版本时使用的前缀。 要完全删除前缀,请将其设置为空字符串: ""

因为其他工具可能依赖于 npm 版本标签看起来像 v1.0.0 的约定,所以只有在绝对必要时才使用这个属性。 特别是,在为公共包覆盖此设置时要小心。

timing

  • 默认值: false
  • 类型: 布尔值

如果为 true,则将 npm-debug 日志写入 _logs 并将计时信息写入 _timing.json,两者都在你的缓存中。 _timing.json 是 JSON 对象的换行符分隔列表。 你可以使用此 json 命令行快速查看它: json -g < ~/.npm/_timing.json

tmp

  • 默认值: TMPDIR 环境变量,或 "/tmp"
  • 类型: 路径

存储临时文件和文件夹的位置。 所有临时文件在成功时都会被删除,但在失败时会留下以供取证。

unicode

  • 默认值: 在 Windows 上为 false,在具有 unicode 语言环境的 mac/unix 系统上为 true
  • 类型: 布尔值

当设置为 true 时,npm 在树输出中使用 unicode 字符。 当为 false 时,它​​使用 ascii 字符来绘制树。

unsafe-perm

  • 默认值: 如果以 root 身份运行则为 false,否则为 true
  • 类型: 布尔值

设置为 true 以在运行包脚本时抑制 UID/GID 切换。 如果显式设置为 false,则以非 root 用户身份安装将失败。

update-notifier

  • 默认值: true
  • 类型: 布尔值

设置为 false 以在使用比最新版本更旧的 npm 时抑制更新通知。

usage

  • 默认值: false
  • 类型: 布尔值

设置为在执行 npm help 时显示简短的使用输出(如 -H 输出)而不是完整的帮助。

user

  • 默认值: "nobody"
  • 类型: 字符串或数字

以 root 身份运行包脚本时要设置的 UID。

userconfig

  • 默认值: ~/.npmrc
  • 类型: 路径

用户级配置设置的位置。

umask

  • 默认值: 022
  • 类型: 0000..0777 (0..511) 范围内的八进制数字字符串

设置文件和文件夹的文件创建模式时使用的 "umask" 值。

文件夹和可执行文件被赋予一个模式,该模式被 0777 屏蔽该值。 其他文件的模式是 0666 屏蔽此值。 因此,默认值分别为 07550644

user-agent

  • 默认值: node/{process.version} {process.platform} {process.arch}
  • 类型: 字符串

将 User-Agent 设置为请求标头

version

  • 默认值: false
  • 类型: 布尔值

如果为 true,则输出 npm 版本并成功退出。

仅在命令行上明确指定时才相关。

versions

  • 默认值: false
  • 类型: 布尔值

如果为 true,则输出 npm 版本以及 node 的 process.versions 映射,并成功退出。

仅在命令行上明确指定时才相关。

viewer

  • 默认值: Posix 上的 "man",Windows 上的 "browser"
  • 类型: 路径

用于查看帮助内容的程序。

设置为 "browser" 以在默认 Web 浏览器中查看 html 帮助内容。

也可以看看

npm 中文网 - 粤ICP备13048890号