npm 配置 Config

2021-10-29 10:52 更新

描述

npm 從以下來(lái)源獲取其配置值,按優(yōu)先級(jí)排序:

命令行標(biāo)志

--foo bar 放在命令行上會(huì)將 foo 配置參數(shù)設(shè)置為 bar。?--參數(shù)告訴 CLI 解析器停止讀取標(biāo)志。在--flag不指定任何值的情況下使用會(huì)將值設(shè)置為true。

例如:--flag1 --flag2會(huì)將兩個(gè)配置參數(shù)都設(shè)置為true,而--flag1 --flag2 bar會(huì)將flag1設(shè)置為true,將flag2設(shè)置為bar。最后,--flag1 --flag2 -- bar將兩個(gè)配置參數(shù)都設(shè)置為true,并將bar當(dāng)作命令參數(shù)。

環(huán)境變量

任何以npm_config_開(kāi)頭的環(huán)境變量都將被解釋為配置參數(shù)。例如,將?npm_config_foo=bar放在您的環(huán)境中會(huì)將foo?配置參數(shù)設(shè)置為bar.?任何未賦予值的環(huán)境配置都將賦予true值。配置值不區(qū)分大小寫(xiě),因此NPM_CONFIG_FOO=bar的工作方式相同。但是,請(qǐng)注意,在 npm-scripts 中,?npm 會(huì)設(shè)置自己的環(huán)境變量,而 Node 會(huì)更喜歡那些小寫(xiě)版本,而不是您可能設(shè)置的任何大寫(xiě)版本。有關(guān)詳細(xì)信息,請(qǐng)參閱此問(wèn)題。

請(qǐng)注意,您需要使用下劃線而不是破折號(hào),因此--allow-same-version?會(huì)變成npm_config_allow_same_version=true.

npmrc 文件

四個(gè)相關(guān)文件是:

  • 每個(gè)項(xiàng)目的配置文件 (?/path/to/my/project/.npmrc)
  • 每個(gè)用戶的配置文件(默認(rèn)為$HOME/.npmrc
  • 可通過(guò) CLI 選項(xiàng)--userconfig或環(huán)境變量配置$NPM_CONFIG_USERCONFIG)全局配置文件(默認(rèn)為$PREFIX/etc/npmrc;
  • 可通過(guò) CLI 選項(xiàng)--globalconfig或環(huán)境變量配置$NPM_CONFIG_GLOBALCONFIG)npm 的內(nèi)置配置文件 (?/path/to/npm/npmrc)

有關(guān)更多詳細(xì)信息,請(qǐng)參閱npmrc。

默認(rèn)配置

運(yùn)行npm config ls -l以查看一組 npm 內(nèi)部的配置參數(shù),如果未指定其他參數(shù),則為默認(rèn)值。

速記和其他 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

如果指定的配置參數(shù)明確解析為已知配置參數(shù),則將其擴(kuò)展為該配置參數(shù)。例如:

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

如果多個(gè)單字符速記串在一起,并且得到的組合明確不是其他配置參數(shù),那么它會(huì)擴(kuò)展到其各個(gè)組成部分。例如:

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

每個(gè)包的配置設(shè)置

運(yùn)行腳本時(shí)(請(qǐng)參閱[npm-scripts](https://www.npmjs.cn/misc/scripts)參考資料),如果 config 參數(shù)為?<name>[@<version>]:<key>.?例如,如果 package.json 有這個(gè):

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

server.js 是這樣的:

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

然后用戶可以通過(guò)執(zhí)行以下操作來(lái)更改行為:

npm config set foo:port 80

有關(guān)更多信息,請(qǐng)參閱package.json。

配置設(shè)置

access

  • 默認(rèn): restricted
  • 類(lèi)型:Public

發(fā)布范圍包時(shí),訪問(wèn)級(jí)別默認(rèn)為 restri發(fā)布范圍包時(shí),訪問(wèn)級(jí)別默認(rèn)為restricted。如果您希望您的范圍包公開(kāi)可見(jiàn)(和可安裝) set?--access=public。的唯一有效值accesspublic和?restricted。無(wú)作用域的包的訪問(wèn)級(jí)別始終為public.

allow-same-version

  • 默認(rèn)值:false
  • 類(lèi)型:Boolean

防止在npm version用于將新版本設(shè)置為與當(dāng)前版本相同的值時(shí)拋出錯(cuò)誤。

always-auth

  • 默認(rèn)值:false
  • 類(lèi)型:Boolean

強(qiáng)制 npm 在訪問(wèn)注冊(cè)表時(shí)始終需要身份驗(yàn)證,即使對(duì)于GET請(qǐng)求也是如此。

also

  • 默認(rèn)值:null
  • 類(lèi)型:String

當(dāng)“dev”或“development”并在本地運(yùn)行時(shí)npm shrinkwrap,?npm outdated, 或npm update--dev.

auth

  • 默認(rèn)值:true
  • 類(lèi)型:Boolean

當(dāng)為“true”時(shí),將審計(jì)報(bào)告與npm install運(yùn)行一起提交到默認(rèn)注冊(cè)表和為范圍配置的所有注冊(cè)表。有關(guān)提交內(nèi)容的詳細(xì)信息,請(qǐng)參閱npm-audit的文檔。

auth-level

  • 默認(rèn):?"low"
  • 類(lèi)型:'low',?'moderate',?'high','critical'``npm audit

以非零退出代碼退出的最低漏洞級(jí)別。

auth-type

  • 默認(rèn):?'legacy'
  • 類(lèi)型:'legacy',?'sso',?'saml','oauth'

adduser/一起使用的身份驗(yàn)證策略login。

bin-links

  • 默認(rèn):?true
  • 類(lèi)型:Boolean

告訴 npm.cmd為包可執(zhí)行文件創(chuàng)建符號(hào)鏈接(或Windows 上的墊片)。

設(shè)置為 false 使其不這樣做。這可以用來(lái)解決一些文件系統(tǒng)不支持符號(hào)鏈接的事實(shí),即使在表面上是 Unix 系統(tǒng)上。

browser

  • 默認(rèn)值:OS X:?"open", Windows:?"start", 其他:"xdg-open"
  • 類(lèi)型:String

npm docs命令調(diào)用以打開(kāi)網(wǎng)站的瀏覽器。

ca

  • 默認(rèn)值:npm CA 證書(shū)
  • 類(lèi)型:string、數(shù)組或空

到注冊(cè)表的 SSL 連接受信任的證書(shū)頒發(fā)機(jī)構(gòu)簽名證書(shū)。值應(yīng)采用 PEM 格式(Windows 稱(chēng)其為“Base-64 編碼的 X.509 (.CER)”),換行符替換為字符串“\n”。例如:

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

設(shè)置為null僅允許“已知”注冊(cè)商,或特定 CA 證書(shū)僅信任該特定簽名機(jī)構(gòu)。 通過(guò)指定一組證書(shū),可以信任多個(gè) CA:

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

另請(qǐng)參閱strict-ssl配置。

cafile

  • 默認(rèn)值:null
  • 類(lèi)型:Path

包含一個(gè)或多個(gè)證書(shū)頒發(fā)機(jī)構(gòu)簽名證書(shū)的文件的路徑。與 ca 設(shè)置類(lèi)似,但允許多個(gè) ca,以及將 ca 信息存儲(chǔ)在磁盤(pán)上的文件中。

cache

  • 默認(rèn)值:Windows:%AppData%\npm-cache, posix:~/.npm
  • 類(lèi)型:Path

npm 緩存目錄的位置。看 [npm-cache][]

cache-lock-stale

  • 默認(rèn)值:60000(1 分鐘)
  • 類(lèi)型:Number

緩存文件夾鎖定文件被視為陳舊之前的毫秒數(shù)。

cache-lock-retries

  • 默認(rèn)值:10
  • 類(lèi)型:Number

重試獲取緩存文件夾鎖定文件鎖定的次數(shù)。

cache-lock-wait

  • 默認(rèn)值:10000(10 秒)
  • 類(lèi)型:Number

等待緩存鎖定文件到期的毫秒數(shù)。

cache-max

  • 默認(rèn)值:無(wú)窮大
  • 類(lèi)型:Number

已棄用:此選項(xiàng)已被棄用,以支持--prefer-online. --cache-max=0--prefer-online的別名。

cache-min

  • 默認(rèn)值:10
  • 類(lèi)型:Number

已棄用:此選項(xiàng)已被棄用,以支持--prefer-offline. --cache-min=9999 (or bigger)--prefer-offline的別名。

cert

  • 默認(rèn):?null
  • 類(lèi)型:String

訪問(wèn)注冊(cè)表時(shí)要傳遞的客戶端證書(shū)。值應(yīng)采用 PEM 格式(Windows 稱(chēng)其為“Base-64 編碼的 X.509 (.CER)”),換行符替換為字符串“\n”。例如:

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

它不是證書(shū)文件的路徑(并且沒(méi)有“certfile”選項(xiàng))。

cidr

  • 默認(rèn)值:null
  • 類(lèi)型:string、array、null

這是使用npm token create 命令配置受限訪問(wèn)令牌時(shí)要使用的 CIDR 地址列表。

color

  • 默認(rèn)值:true
  • 類(lèi)型:Boolean 或?"always"

如果為 false,則從不顯示顏色。如果"always"然后總是顯示顏色。如果為 true,則僅打印 tty 文件描述符的顏色代碼。

也可以使用環(huán)境更改此選項(xiàng):當(dāng)環(huán)境變量NO_COLOR設(shè)置為任何值時(shí),顏色將被禁用。

depth

  • 默認(rèn)值:無(wú)窮大
  • 類(lèi)型:Number

深度為遞歸目錄時(shí)去npm ls,?npm cache lsnpm outdated。

對(duì)于npm outdated, 的設(shè)置Infinity將被視為0?因?yàn)樗峁┝烁嘤杏玫男畔?。要顯示所有包和依賴(lài)項(xiàng)的過(guò)時(shí)狀態(tài),請(qǐng)使用大整數(shù)值,例如,npm outdated --depth 9999

description

  • 默認(rèn)值:true
  • 類(lèi)型:Boolean

顯示說(shuō)明?npm search

dev

  • 默認(rèn)值:false
  • 類(lèi)型:Boolean

dev-dependencies與軟件包一起安裝。

dry-run

  • 默認(rèn)值:false
  • 類(lèi)型:Boolean

表示您不希望 npm 進(jìn)行任何更改并且它應(yīng)該只報(bào)告它會(huì)做的事情。這可以傳遞到修改本地安裝的任何命令中,例如,install,update,?dedupe,uninstall。這是不是目前一些網(wǎng)絡(luò)相關(guān)的命令,如兌現(xiàn)dist-tags,owner等等。

editor

  • 默認(rèn)值:EDITOR環(huán)境變量(如果已設(shè)置)、"vi"Posix 或"notepad"Windows。
  • 類(lèi)型:Path

npm editor運(yùn)行的命令npm config edit。

engine-strict

  • 默認(rèn)值:false
  • 類(lèi)型:Boolean

如果設(shè)置為 true,那么 npm 將頑固地拒絕安裝(甚至考慮安裝)任何聲稱(chēng)與當(dāng)前 Node.js 版本不兼容的包。

force

  • 默認(rèn)值:false
  • 類(lèi)型:Boolean

使各種命令更有力:

  • 生命周期腳本失敗不會(huì)阻止進(jìn)度。
  • 發(fā)布clobbers以前發(fā)布的版本。
  • 從注冊(cè)表請(qǐng)求時(shí)跳過(guò)緩存。
  • 防止檢查破壞非 npm 文件。

fetch-retries

  • 默認(rèn)值:2
  • 類(lèi)型:Number

retry從注冊(cè)表中獲取包時(shí)要使用的模塊的“重試”配置。

fetch-retry-factor

  • 默認(rèn)值:10
  • 類(lèi)型:Number

retry模塊在獲取包時(shí)使用的“因子”配置。

fetch-retry-mintimeout

  • 默認(rèn)值:10000(10 秒)
  • 類(lèi)型:Number

retry模塊在獲取包時(shí)使用的“minTimeout”配置。

fetch-retry-maxtimeout

  • 默認(rèn)值:60000(1 分鐘)
  • 類(lèi)型:Number

retry模塊在獲取包時(shí)使用的“maxTimeout”配置。

git

  • 默認(rèn):?"git"
  • 類(lèi)型:String

用于 git 命令的命令。如果 git 安裝在計(jì)算機(jī)上,但不在 中PATH,則將其設(shè)置為 git 二進(jìn)制文件的完整路徑。

git-tag-version

  • 默認(rèn):?true
  • 類(lèi)型:Boolean

使用npm version命令時(shí)標(biāo)記提交。

commit-hooks

  • 默認(rèn):?true
  • 類(lèi)型:Boolean

使用npm version命令時(shí)運(yùn)行 git commit hooks?。

global

  • 默認(rèn)值:false
  • 類(lèi)型:Boolean

在“全局”模式下運(yùn)行,以便將包安裝到?prefix文件夾而不是當(dāng)前工作目錄中。有關(guān)[npm-folders](https://www.npmjs.cn/files/folders)行為差異的更多信息,請(qǐng)參閱?。 軟件包安裝到{prefix}/lib/node_modules文件夾中,而不是當(dāng)前工作目錄中。bin 文件鏈接到?{prefix}/bin手冊(cè)頁(yè)鏈接到?{prefix}/share/man

globalconfig

  • 默認(rèn)值:{prefix}/etc/npmrc
  • 類(lèi)型:Path

要讀取全局配置選項(xiàng)的配置文件。

global-style

  • 默認(rèn)值:false
  • 類(lèi)型:Boolean

使 npm 以node_modules與全局node_modules文件夾相同的布局將包安裝到本地文件夾中。只有您的直接依賴(lài)項(xiàng)會(huì)顯示在其中,node_modules并且它們所依賴(lài)的所有內(nèi)容都將在其node_modules文件夾中展平。這顯然會(huì)消除一些重復(fù)數(shù)據(jù)刪除。如果與 一起使用legacy-bundling,legacy-bundling將是首選。

group

  • 默認(rèn)值:當(dāng)前進(jìn)程的 GID
  • 類(lèi)型:String 或 Number

以 root 用戶身份在全局模式下運(yùn)行包腳本時(shí)要使用的組。

heading

  • 默認(rèn):?"npm"
  • 類(lèi)型:String

啟動(dòng)所有調(diào)試日志輸出的字符串。

https-proxy

  • 默認(rèn)值:null
  • 類(lèi)型:Url

用于傳出 https 請(qǐng)求的代理。如果設(shè)置了HTTPS_PROXYor?https_proxyHTTP_PROXYorhttp_proxy環(huán)境變量,則底層request庫(kù)將遵循代理設(shè)置。

if-present

  • 默認(rèn)值:false
  • 類(lèi)型:Boolean

如果為真,NPM不會(huì)有錯(cuò)誤代碼時(shí)退出run-script被調(diào)用未在定義腳本scripts的部分package.json。當(dāng)需要有選擇地運(yùn)行存在的腳本并在腳本失敗時(shí)失敗時(shí),可以使用此選項(xiàng)。這很有用,例如,在運(yùn)行可能僅適用于其他通用 CI 設(shè)置中的某些構(gòu)建的腳本時(shí)。

ignore-prepublish

  • 默認(rèn)值:false
  • 類(lèi)型:Boolean

如果為 true,npm 將不會(huì)運(yùn)行prepublish腳本。

ignore-scripts

  • 默認(rèn)值:false
  • 類(lèi)型:Boolean

如果為 true,則 npm 不會(huì)運(yùn)行 package.json 文件中指定的腳本。

init-module

  • 默認(rèn)值:~/.npm-init.js
  • 類(lèi)型:Path

將由npm init命令加載的模塊。有關(guān)更多信息,請(qǐng)參閱init-package-json模塊的文檔?或npm-init。

init-author-name

  • 默認(rèn): ””
  • 類(lèi)型:String

該值npm init應(yīng)該由默認(rèn)包的作者的名字使用。

init-author-email

  • 默認(rèn): ””
  • 類(lèi)型:String

該值npm init應(yīng)該是默認(rèn)對(duì)于包的作者的電子郵件使用。

init-author-url

  • 默認(rèn): ””
  • 類(lèi)型:String

該值npm init應(yīng)該由默認(rèn)包作者的主頁(yè)使用。

init-license

  • 默認(rèn)值:“ISC”
  • 類(lèi)型:String

該值npm init應(yīng)為默認(rèn)包許可使用。

init-version

  • 默認(rèn)值:“1.0.0”
  • 類(lèi)型:Semver

該值npm init應(yīng)該默認(rèn)軟件包版本號(hào)使用,如果在的package.json尚未設(shè)置。

json

  • 默認(rèn)值:false
  • 類(lèi)型:boolean

是否輸出JSON數(shù)據(jù),而不是正常輸出。 此功能目前處于試驗(yàn)階段,許多命令的輸出數(shù)據(jù)結(jié)構(gòu)尚未在 JSON 中實(shí)現(xiàn),或者可能會(huì)發(fā)生變化。只有來(lái)自npm ls --json和的輸出npm search --json當(dāng)前有效。

key

  • 默認(rèn):?null
  • 類(lèi)型:String

訪問(wèn)注冊(cè)表時(shí)要傳遞的客戶端密鑰。值應(yīng)為 PEM 格式,換行符替換為字符串“\n”。例如:

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

它不是密鑰文件的路徑(并且沒(méi)有“密鑰文件”選項(xiàng))。

legacy-bunding

  • 默認(rèn)值:false
  • 類(lèi)型:Boolean

使 npm 安裝包,以便 1.4 之前的 npm 版本,例如 node 0.8 中包含的版本,可以安裝該包。這消除了所有自動(dòng)重復(fù)數(shù)據(jù)刪除。如果與global-style此選項(xiàng)一起使用將是首選。

link

  • 默認(rèn)值:false
  • 類(lèi)型:Boolean

如果為 true,則本地安裝將鏈接是否有合適的全局安裝包。 請(qǐng)注意,這意味著本地安裝可能會(huì)導(dǎo)致同時(shí)將事物安裝到全局空間中。僅當(dāng)滿足兩個(gè)條件之一時(shí)才完成鏈接: 該軟件包尚未全局安裝,或全局安裝的版本與本地安裝的版本相同。

local-address

  • 默認(rèn)值:undefined
  • 類(lèi)型:IP 地址

連接到 npm 注冊(cè)表時(shí)要使用的本地接口的 IP 地址。在 0.12 之前的 Node 版本中必須是 IPv4。

loglevel

  • 默認(rèn)值:"notice"
  • 類(lèi)型:String
  • 值:“silent”、“error”、“warn”、“notice”、“http”、“timing”、“info”、“verbose”、“silly”

要報(bào)告的日志級(jí)別。失敗時(shí),所有日志都寫(xiě)入?npm-debug.log當(dāng)前工作目錄。 顯示任何高于設(shè)置級(jí)別的日志。默認(rèn)值為“通知”。

logstream

  • 默認(rèn)值:process.stderr
  • 類(lèi)型:Stream

這是在運(yùn)行時(shí)傳遞給npmlog模塊的流?。 它不能從命令行設(shè)置,但如果您以編程方式使用 npm,您可能希望將日志發(fā)送到 stderr 以外的其他地方。 如果color配置設(shè)置為 true,則此流將接收彩色輸出(如果它是 TTY)。

logs-max

  • 默認(rèn)值:10
  • 類(lèi)型:Number

要存儲(chǔ)的最大日志文件數(shù)。

long

  • 默認(rèn)值:false
  • 類(lèi)型:Boolean

npm ls和 中顯示擴(kuò)展信息npm search。

maxsockets

  • 默認(rèn)值:50
  • 類(lèi)型:Number

每個(gè)源使用的最大連接數(shù)(協(xié)議/主機(jī)/端口組合)。傳遞給http?Agent用于發(fā)出請(qǐng)求的對(duì)象。

message

  • 默認(rèn)值:"%s"
  • 類(lèi)型:String

npm version創(chuàng)建版本提交時(shí)使用的提交消息。 消息中的任何“%s”都將替換為版本號(hào)。

metrics-registry

您要向其發(fā)送 cli 指標(biāo)的注冊(cè)表是否send-metrics為 true。

node-options

  • 默認(rèn)值:null
  • 類(lèi)型:String

通過(guò)NODE_OPTIONS環(huán)境變量傳遞到 Node.js 的選項(xiàng)。這不會(huì)影響 npm 本身的執(zhí)行方式,但會(huì)影響生命周期腳本的調(diào)用方式。

node-version

  • 默認(rèn)值:process.version
  • 類(lèi)型:semver 或 false

檢查包的engines映射時(shí)要使用的節(jié)點(diǎn)版本。

noproxy

  • 默認(rèn)值:null
  • 類(lèi)型:String 或 Array

不應(yīng)使用代理的逗號(hào)分隔字符串或域擴(kuò)展數(shù)組。

offline

  • 默認(rèn)值:false
  • 類(lèi)型:Boolean

強(qiáng)制離線模式:安裝過(guò)程中不會(huì)進(jìn)行網(wǎng)絡(luò)請(qǐng)求。要允許 CLI 填充丟失的緩存數(shù)據(jù),請(qǐng)參閱--prefer-offline。

onload-script

  • 默認(rèn)值:false
  • 類(lèi)型:Path

require()npm 加載時(shí)的節(jié)點(diǎn)模塊。對(duì)編程使用很有用。

only

  • 默認(rèn)值:null
  • 類(lèi)型:String

當(dāng) "dev" 或 "development" 并且在npm install沒(méi)有任何參數(shù)的情況下在本地運(yùn)行時(shí),只會(huì)安裝 devDependencies(及其依賴(lài)項(xiàng))。 當(dāng)“dev”或“development”并在本地運(yùn)行時(shí)npm ls,npm outdated, 或?npm update--dev. 當(dāng)“prod”或“production”并且在npm install沒(méi)有任何參數(shù)的情況下在本地運(yùn)行時(shí),只會(huì)安裝非 devDependencies(及其依賴(lài)項(xiàng))。 當(dāng)“prod”或“production”并在本地運(yùn)行時(shí)npm ls,npm outdated, 或?npm update--production.

optional

  • 默認(rèn)值:true
  • 類(lèi)型:Boolean

嘗試在optionalDependencies對(duì)象中安裝包。請(qǐng)注意,如果這些軟件包安裝失敗,則不會(huì)中止整個(gè)安裝過(guò)程。

otp

  • 默認(rèn)值:null
  • 類(lèi)型:Number

這是來(lái)自?xún)梢蛩厣矸蒡?yàn)證器的一次性密碼。使用npm access.

package-lock

  • 默認(rèn)值:true
  • 類(lèi)型:Boolean

如果設(shè)置為 false,則package-lock.json在安裝時(shí)忽略文件。如果為真,這也將阻止寫(xiě)入?。package-lock.json``save

當(dāng)包包鎖被禁用時(shí),無(wú)關(guān)模塊的自動(dòng)修剪也將被禁用。要?jiǎng)h除禁用包鎖的無(wú)關(guān)模塊,請(qǐng)使用npm prune. 此選項(xiàng)是 的別名--shrinkwrap。

package-lock-only

  • 默認(rèn)值:false
  • 類(lèi)型:Boolean

如果設(shè)置為 true,它將只更新package-lock.json,而不是檢查node_modules和下載依賴(lài)項(xiàng)。

parseable

  • 默認(rèn)值:false
  • 類(lèi)型:Boolean

從寫(xiě)入標(biāo)準(zhǔn)輸出的命令輸出可解析的結(jié)果。對(duì)于npm search,這將是制表符分隔的表格格式。

prefer-offline

  • 默認(rèn)值:false
  • 類(lèi)型:Boolean

如果為 true,將繞過(guò)對(duì)緩存數(shù)據(jù)的陳舊檢查,但將從服務(wù)器請(qǐng)求丟失的數(shù)據(jù)。要強(qiáng)制完全離線模式,請(qǐng)使用--offline.

此選項(xiàng)實(shí)際上等效于--cache-min=9999999.

prefer-online

  • 默認(rèn)值:false
  • 類(lèi)型:Boolean

如果為 true,則將強(qiáng)制對(duì)緩存數(shù)據(jù)進(jìn)行陳舊性檢查,從而使 CLI 立即查找更新,即使是新的包數(shù)據(jù)。

prefix

  • 默認(rèn)值:請(qǐng)參閱 npm 文件夾
  • 類(lèi)型:path

安裝全局項(xiàng)的位置。如果在命令行上設(shè)置,則它會(huì)強(qiáng)制非全局命令在指定文件夾中運(yùn)行。

preid

  • 默認(rèn): ""
  • 類(lèi)型:String

用作 semver 的“預(yù)發(fā)布”部分的前綴的“預(yù)發(fā)布標(biāo)識(shí)符”。就像rc1.2.0-rc.8.

production

  • 默認(rèn)值:false
  • 類(lèi)型:Boolean

設(shè)置為 true 以在“生產(chǎn)”模式下運(yùn)行。 在npm install沒(méi)有任何參數(shù)的情況下運(yùn)行本地時(shí),devDependencies 不會(huì)安裝在最頂層。為生命周期腳本設(shè)置 NODE_ENV="production"。

progress

  • 默認(rèn)值:true,除非設(shè)置了 TRAVIS 或 CI env vars。
  • 類(lèi)型:Boolean

設(shè)置為true時(shí),如果process.stderr是 TTY?,npm 將在時(shí)間密集型操作期間顯示進(jìn)度條。 設(shè)置為false抑制進(jìn)度條。

proxy

  • 默認(rèn)值:null
  • 類(lèi)型:Url

用于傳出 http 請(qǐng)求的代理。如果設(shè)置了HTTP_PROXY或?http_proxy環(huán)境變量,則底層request庫(kù)將遵循代理設(shè)置。

read-only

  • 默認(rèn)值:false
  • 類(lèi)型:Boolean

這用于在使用npm token create命令配置受限訪問(wèn)令牌時(shí)將令牌標(biāo)記為無(wú)法發(fā)布。

rebuild-bundle

  • 默認(rèn)值:true
  • 類(lèi)型:Boolean

安裝后重建捆綁的依賴(lài)項(xiàng)。

registry

  • 默認(rèn)值:https?:?//registry.npmjs.org/
  • 類(lèi)型:Url

npm 包注冊(cè)表的基本 URL。

rollback

  • 默認(rèn)值:true
  • 類(lèi)型:Boolean

刪除失敗的安裝。

save

  • 默認(rèn)值:true
  • 類(lèi)型:Boolean

將已安裝的包作為依賴(lài)項(xiàng)保存到 package.json 文件中。 當(dāng)與npm rm命令一起使用時(shí),它會(huì)將它從dependencies?對(duì)象中刪除。 僅當(dāng)存在 package.json 文件時(shí)才有效。

save-bundle

  • 默認(rèn)值:false
  • 類(lèi)型:Boolean

如果一個(gè)軟件包將在通過(guò)使用安裝時(shí)被保存--save,?--save-dev或者--save-optional,那么也把它在?bundleDependencies列表中。 與該npm rm命令一起使用時(shí),它會(huì)將其從 bundledDependencies 列表中刪除。

save-prod

  • 默認(rèn)值:false
  • 類(lèi)型:Boolean

確保一個(gè)包將被dependencies專(zhuān)門(mén)保存到。如果包已經(jīng)存在于devDependencies或 中?optionalDependencies,但您想將其移動(dòng)為生產(chǎn)部門(mén),則這很有用。如果--save為真,則這也是默認(rèn)行為,兩者都不為真--save-dev或?--save-optional都為真。

save-dev

  • 默認(rèn)值:false
  • 類(lèi)型:Boolean

將已安裝的包作為 .json 文件保存到 package.json 文件中devDependencies。 當(dāng)與npm rm命令一起使用時(shí),它會(huì)將它從devDependencies對(duì)象中刪除?。 僅當(dāng)存在 package.json 文件時(shí)才有效。

save-exact

  • 默認(rèn)值:false
  • 類(lèi)型:Boolean

使用--save,保存到 package.json 的依賴(lài)項(xiàng),--save-dev或者?--save-optional將使用確切版本而不是使用 npm 的默認(rèn) semver 范圍運(yùn)算符進(jìn)行配置。

save-optional

  • 默認(rèn)值:false
  • 類(lèi)型:Boolean

將已安裝的軟件包作為 optionalDependencies 保存到 package.json 文件中。 當(dāng)與npm rm命令一起使用時(shí),它會(huì)將它從devDependencies對(duì)象中刪除?。 僅當(dāng)存在 package.json 文件時(shí)才有效。

save-prefix

  • 默認(rèn)值:'^'
  • 類(lèi)型:String

配置安裝到 package.json 文件的軟件包版本如何通過(guò)?--save--save-dev獲得前綴。 例如,如果一個(gè)包有 version?1.2.3,默認(rèn)情況下它的 version 被設(shè)置為^1.2.3允許對(duì)該包進(jìn)行次要升級(jí),但之后?npm config set save-prefix='~'它會(huì)被設(shè)置為~1.2.3只允許補(bǔ)丁升級(jí)。

scope

  • 默認(rèn)值:當(dāng)前項(xiàng)目的范圍,如果有,或""
  • 類(lèi)型:String

將操作與作用域注冊(cè)表的作用域相關(guān)聯(lián)。首次登錄私有注冊(cè)表時(shí)很有用:?npm login --scope=@organization --registry=registry.organization.com,這將導(dǎo)致@organization映射到注冊(cè)表,以便將來(lái)安裝根據(jù)模式指定的軟件包@organization/package

script-shell

  • 默認(rèn):null
  • 類(lèi)型:Path

用于腳本的 shell 與npm run命令一起運(yùn)行。

scripts-prepent-node-path

  • 默認(rèn)值:"warn-only"
  • 類(lèi)型:Boolean,"auto""warn-only"

如果設(shè)置為true,則在運(yùn)行腳本時(shí)將當(dāng)前node可執(zhí)行文件所在的目錄添加到PATH環(huán)境變量中,即使這意味著npm將調(diào)用node與其正在運(yùn)行的可執(zhí)行文件不同的可執(zhí)行文件。 如果設(shè)置為false,則永遠(yuǎn)不要修改PATH。 如果設(shè)置為"warn-only",則永遠(yuǎn)不要修改,PATH但如果npm認(rèn)為您可能想用 運(yùn)行它,則打印警告true,例如,因?yàn)?中的node可執(zhí)行文件PATH不是npm被調(diào)用的可執(zhí)行文件。 如果設(shè)置為auto,則僅PATH當(dāng)調(diào)用的node可執(zhí)行文件與npm第一個(gè)在 上找到的可執(zhí)行文件不同時(shí),才將該目錄添加到環(huán)境變量中PATH

searchexclude

  • 默認(rèn): ""
  • 類(lèi)型:String

限制搜索結(jié)果的空格分隔選項(xiàng)。

serchopts

  • 默認(rèn): ""
  • 類(lèi)型:String

始終傳遞給搜索的空格分隔選項(xiàng)。

searchlimit

  • 默認(rèn)值:20
  • 類(lèi)型:number

限制搜索結(jié)果的項(xiàng)目數(shù)。根本不適用于舊版搜索。

searchstaleness

  • 默認(rèn)值:900(15 分鐘)
  • 類(lèi)型:Number

如果使用舊搜索端點(diǎn),則在發(fā)出另一個(gè)注冊(cè)表請(qǐng)求之前緩存的年齡(以秒為單位)。

send-metrics

  • 默認(rèn)值:false
  • 類(lèi)型:Boolean

如果為 true,成功/失敗指標(biāo)將報(bào)告給存儲(chǔ)在?metrics-registry.?這些請(qǐng)求包含 npm CLI 運(yùn)行成功和失敗的次數(shù)以及收集這些計(jì)數(shù)的時(shí)間段。這些請(qǐng)求中不包含識(shí)別信息。

shell

  • 默認(rèn)值:SHELL 環(huán)境變量,或 Posix 上的“bash”,或 Windows 上的“cmd”
  • 類(lèi)型:Path

npm explore命令運(yùn)行的 shell?。

shrinkwrap

  • 默認(rèn)值:true
  • 類(lèi)型:Boolean

如果設(shè)置為 false,則npm-shrinkwrap.json在安裝時(shí)忽略文件。如果為真,這也將阻止寫(xiě)入?。npm-shrinkwrap.json``save 此選項(xiàng)是 的別名--package-lock

sign-git-commit

  • 默認(rèn)值:false
  • 類(lèi)型:Boolean

如果設(shè)置為 true,則該npm version命令將使用-S添加簽名來(lái)提交新的包版本。 請(qǐng)注意,git 要求您在 git 配置中設(shè)置 GPG 密鑰才能正常工作。

sign-git-tag

  • 默認(rèn)值:false
  • 類(lèi)型:Boolean

如果設(shè)置為 true,則該npm version命令將使用-s添加簽名來(lái)標(biāo)記版本。 請(qǐng)注意,git 要求您在 git 配置中設(shè)置 GPG 密鑰才能正常工作。

sso-frequency

  • 默認(rèn)值:500
  • 類(lèi)型:Number

當(dāng)與啟用 SSO 的auth-types 一起使用時(shí),配置在用戶完成身份驗(yàn)證時(shí)應(yīng)該多久輪詢(xún)注冊(cè)表。

sso-type

  • 默認(rèn)值:'oauth'
  • 類(lèi)型:'oauth'、'saml' 或 null

如果--auth-type=sso,要使用的 SSO 類(lèi)型的類(lèi)型。

strict-ssl

  • 默認(rèn)值:true
  • 類(lèi)型:Boolean

通過(guò) https 向注冊(cè)中心發(fā)出請(qǐng)求時(shí)是否進(jìn)行 SSL 密鑰驗(yàn)證。 另請(qǐng)參閱ca配置。

tag

  • 默認(rèn)值:"latest"
  • 類(lèi)型:String

如果你要求 npm 安裝一個(gè)包并且沒(méi)有告訴它一個(gè)特定的版本,那么它會(huì)安裝指定的標(biāo)簽。 npm tag如果未給出顯式標(biāo)簽,則也是添加到命令指定的 package@version 的標(biāo)簽。

tag-version-perfix

  • 默認(rèn)值:?"v"
  • 類(lèi)型:String

如果設(shè)置,則在使用 執(zhí)行版本增量時(shí)更改標(biāo)記新版本時(shí)使用的前綴?npm-version。要完全刪除前綴,將其設(shè)置為空字符串:""。 因?yàn)槠渌ぞ呖赡芤蕾?lài)于 npm 版本標(biāo)記看起來(lái)像的約定?v1.0.0,所以只有在絕對(duì)必要時(shí)才使用此屬性。特別是,在為公共包覆蓋此設(shè)置時(shí)要小心。

timing

  • 默認(rèn)值:?false
  • 類(lèi)型:Boolean

如果為 true,則將npm-debug日志_logs和計(jì)時(shí)信息?寫(xiě)入_timing.json緩存中。?_timing.json是一個(gè)以換行符分隔的 JSON 對(duì)象列表。您可以使用此json命令行快速查看它?:?json -g < ~/.npm/_timing.json.

tmp

  • 默認(rèn)值:TMPDIR 環(huán)境變量,或“/tmp”
  • 類(lèi)型:Path

存儲(chǔ)臨時(shí)文件和文件夾的位置。所有臨時(shí)文件在成功時(shí)都會(huì)被刪除,但為了取證目的而在失敗時(shí)被保留。

unicode

  • 默認(rèn)值:在 Windows 上為 false,在具有 unicode 語(yǔ)言環(huán)境的 mac/unix 系統(tǒng)上為 true
  • 類(lèi)型:Boolean

當(dāng)設(shè)置為 true 時(shí),npm 在樹(shù)輸出中使用 unicode 字符。當(dāng)為 false 時(shí),它??使用 ascii 字符來(lái)繪制樹(shù)。

unsafe-perm

  • 默認(rèn)值:如果以 root 身份運(yùn)行,則為 false,否則為 true
  • 類(lèi)型:Boolean

設(shè)置為 true 以在運(yùn)行包腳本時(shí)禁止 UID/GID 切換。如果顯式設(shè)置為 false,則以非 root 用戶身份安裝將失敗。

update-notifier

  • 默認(rèn)值:true
  • 類(lèi)型:Boolean

設(shè)置為 false 以在使用較舊版本的 npm 時(shí)抑制更新通知。

usage

  • 默認(rèn)值:false
  • 類(lèi)型:Boolean

設(shè)置為在執(zhí)行npm-help.

user

  • 默認(rèn)值:"nobody"
  • 類(lèi)型:String 或 Number

以 root 身份運(yùn)行包腳本時(shí)要設(shè)置的 UID。

userconfig

  • 默認(rèn)值:~/.npmrc
  • 類(lèi)型:Path

用戶級(jí)配置設(shè)置的位置。

umask

  • 默認(rèn)值:022
  • 類(lèi)型:范圍為 0000..0777 (0..511) 的八進(jìn)制數(shù)字字符串

在文件和文件夾上設(shè)置文件創(chuàng)建模式時(shí)要使用的“umask”值。 文件夾和可執(zhí)行文件被賦予一種模式,該模式0777針對(duì)此值進(jìn)行屏蔽。其他文件被賦予一種模式,該模式0666針對(duì)此值進(jìn)行屏蔽。因此,默認(rèn)值分別是07550644。

user-agent

  • 默認(rèn)值:node/{process.version} {process.platform} {process.arch}
  • 類(lèi)型:String

將用戶代理設(shè)置為請(qǐng)求標(biāo)頭

version

  • 默認(rèn)值:false
  • 類(lèi)型:Boolean

如果為 true,則輸出 npm 版本并成功退出。 僅在命令行上明確指定時(shí)才相關(guān)。

versions

  • 默認(rèn)值:false
  • 類(lèi)型:Boolean

如果為 true,則輸出 npm 版本以及節(jié)點(diǎn)的process.versions映射,并成功退出。 僅在命令行上明確指定時(shí)才相關(guān)。

viewer

  • 默認(rèn)值:Posix 上的"man",Windows 上的"browser"
  • 類(lèi)型:Path

用于查看幫助內(nèi)容的程序。 設(shè)置為"browser"在默認(rèn) Web 瀏覽器中查看 html 幫助內(nèi)容。

以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)