个性化阅读
专注于IT技术分析

npm命令行中文参考文档详解

1、access

设置已发布包的访问级别:

npm access public [<package>]
npm access restricted [<package>]

npm access grant <read-only|read-write> <scope:team> [<package>]
npm access revoke <scope:team> [<package>]

npm access 2fa-required [<package>]
npm access 2fa-not-required [<package>]

npm access ls-packages [<user>|<scope>|<scope:team>]
npm access ls-collaborators [<package> [<user>]]
npm access edit [<package>]

用于设置对私有包的访问控制,对于所有子命令,如果没有将包名传递给子命令,npm access将对当前工作目录中的包执行操作。

  • public / restricted: 设置包可公开访问或受限制。
  • grant/revoke: 添加或删除用户和团队对包具有只读或读写访问权限的能力。
  • 2fa-required / 2fa-not-required: 配置包是否要求发布包的任何人在其帐户上启用双因素身份验证。
  • ls-packages: 显示用户或团队能够访问的所有包,以及访问级别,只读公共包除外(它不会打印整个注册表清单)。
  • ls-collaborators: 显示包的所有访问权限。将只显示至少具有读访问权限的包的权限。如果传入<user>,则列表只过滤给用户碰巧所属的团队。
  • edit: 使用$EDITOR立即设置包的访问权限。

2、adduser

添加注册表用户帐户:

npm adduser [--registry=url] [--scope=@orgname] [--always-auth] [--auth-type=legacy]

aliases: login, add-user

在指定的注册表中创建或验证名为<username>的用户,并将凭据保存到.npmrc文件中。如果没有指定注册表,则使用默认注册表(请参阅npm-config)。

从提示中读取用户名、密码和电子邮件。

要重置密码,请访问https://www.npmjs.com/forget

要更改您的电子邮件地址,请访问https://www.npmjs.com/email-edit

您可以对同一用户帐户多次使用此命令在新机器上进行授权。在新机器上进行身份验证时,用户名、密码和电子邮件地址都必须与现有记录匹配。

npm登录是adduser的别名,其行为完全相同。

3、audit

npm audit [--json|--parseable|--audit-level=(low|moderate|high|critical)]
npm audit fix [--force|--package-lock-only|--dry-run]

common options: [--production] [--only=(dev|prod)]

audit命令将项目中配置的依赖项的描述提交到默认注册表,并要求提供已知漏洞的报告。返回的报告包括关于如何根据这些信息采取行动的说明。如果没有发现漏洞,该命令将以0退出代码退出。

您还可以通过运行npm审计修复来让npm自动修复漏洞。注意,有些漏洞不能自动修复,需要手动干预或检查。还要注意的是,由于npm audit fix在底层运行一个完整的npm安装,所以应用于安装程序的所有配置也将应用于npm安装——所以像npm audit fix这样的东西——包锁将按预期工作。

默认情况下,如果发现任何漏洞,audit命令将以非零代码退出。在CI环境中,包含——audit-level参数来指定导致命令失败的最小漏洞级别,这可能很有用。此选项不过滤报表输出,它只是更改命令的故障阈值。

4、bin

显示npm的bin文件夹:

npm bin [-g|--global]

打印npm将安装可执行文件的文件夹。

5、bugs

web浏览器中的包可能存在bug:

npm bugs [<pkgname>]

aliases: issues

此命令尝试猜测包的bug跟踪器URL的可能位置,然后尝试使用——browser配置参数打开它。如果没有提供包名,它将搜索包。在当前文件夹中使用json,并使用name属性。

6、build

构建一个包:

npm build [<package-folder>]

<package-folder>:包含包的文件夹,json文件的根目录。

这是npm link和npm install调用的管道命令。通常应该在安装期间调用它,但如果需要直接运行它,则运行它:

npm run-script build

7、bundle

在1.0中已经删除了npm bundle命令,原因很简单,不再需要它,因为默认行为是将包安装到本地空间中。现在只需使用npm install来做npm bundle以前做的事情。

8、cache

操作包的缓存:

npm cache add <tarball file>
npm cache add <folder>
npm cache add <tarball url>
npm cache add <name>@<version>

npm cache clean [<path>]
aliases: npm cache clear, npm cache rm

npm cache verify

用于添加、列出或清除npm缓存文件夹。

add: 将指定的包添加到本地缓存。此命令主要用于npm的内部使用,但它可以提供一种方法显式地将数据添加到本地安装缓存中。

clean: 删除缓存文件夹中的所有数据。

verify: 验证缓存文件夹的内容,垃圾收集任何不需要的数据,验证缓存索引和所有缓存数据的完整性。

9、ci

重新安装一个项目:

npm ci

这个命令类似于npm  install,但它用于自动化环境,比如测试平台、持续集成和部署,或者任何您希望确保对依赖项进行干净安装的情况。通过跳过某些面向用户的特性,它可以比常规的npm安装快得多。它也比常规安装更严格,这可以帮助捕获大多数npm用户增量安装的本地环境导致的错误或不一致。

简而言之,使用npm install和npm ci的主要区别在于:

项目必须有一个现有的package-lock.json或npm-shrinkwrap.json。如果package-lock中的依赖项与package中的依赖项不匹配。npm ci将带着一个错误退出,而不是更新package-lock。

npm ci一次只能安装整个项目:不能使用此命令添加单个依赖项。如果node_modules已经存在,它将在npm ci开始安装之前自动删除。它永远不会写package.json或任何package-lock:安装基本上是冻结的。

10、completion

source <(npm completion)

在所有npm命令中启用tab-completion。

11、config

npm config set <key> <value> [-g|--global]
npm config get <key>
npm config delete <key>
npm config list [-l] [--json]
npm config edit
npm get <key>
npm set <key> <value> [-g|--global]

aliases: c

管理npm配置文件,npm从命令行、环境变量、npmrc文件以及某些情况下的包中获取配置设置package.json文件。

12、dedupe

npm dedupe
npm ddp

aliases: find-dupes, ddp

搜索本地包树,并尝试通过将依赖项向上移动到树的更高层来简化整个结构,在树的更高层,多个依赖包可以更有效地共享依赖项。

13、deprecate

弃用软件包的某个版本:

npm deprecate <pkg>[@<version>] <message>

这个命令将更新包的npm注册表条目,为所有试图安装它的人提供一个弃用警告。

14、dist-tag

修改包分发标签:

npm dist-tag add <pkg>@<version> [<tag>]
npm dist-tag rm <pkg> <tag>
npm dist-tag ls [<pkg>]

aliases: dist-tags

添加、删除和枚举包上的分发标签:

add:使用指定的标记标记包的指定版本,如果没有指定,则使用——标记配置。如果您对写和写进行了双因素身份验证,那么您需要在命令行中包含一个一次性密码,使用——otp <一次性密码>。

从包中清除一个不再使用的标签。

ls:显示包的所有发行标记,默认为当前前缀中的包。如果没有指定,这是默认操作。

15、docs

可能是web浏览器中包的文档:

npm docs [<pkgname> [<pkgname> ...]]
npm docs .
npm home [<pkgname> [<pkgname> ...]]
npm home .

此命令尝试猜测包的文档URL的可能位置,然后尝试使用——browser配置参数打开它。您可以同时传递多个包名。如果没有提供包名,它将搜索包。在当前文件夹中使用json,并使用name属性。

16、doctor

npm doctor

检查当前环境。

17、edit

编辑一个已安装的包:

npm edit <pkg>[/<subpkg>...]

在当前工作目录中选择一个(子)依赖项,并在缺省编辑器中打开包文件夹(或您作为npm编辑器配置配置的任何内容,请参见npm-config)。编辑后,重新构建包,以便在编译后的包中获得任何更改。例如,可以执行npm install connect将connect安装到包中,然后npm edit connect对本地安装的副本进行一些更改。

18、explore

浏览已安装的软件包:

npm explore <pkg> [ -- <command>]

在指定的已安装包的目录中生成一个子shell。如果指定了一个命令,那么它将在子shell中运行,然后立即终止。

19、help-search

搜索npm帮助文档:

npm help-search <text>

这个命令将搜索npm markdown文档文件中提供的术语,然后列出结果,按相关性排序。如果只找到一个结果,那么它将显示帮助主题。如果npm help的参数不是一个已知的帮助主题,那么它将调用help-search。很少有必要直接调用这个命令。

20、hook

管理注册表钩子:

npm hook ls [pkg]
npm hook add <entity> <url> <secret>
npm hook update <id> <url> 
npm hook rm <id></id>

21、init

创建一个package.json文件:

npm init [--force|-f|--yes|-y|--scope]
npm init <@scope> (same as `npx <@scope>/create`)
npm init [<@scope>/]<name> (same as `npx [<@scope>/]create-<name>`)

22、install-ci-test

该命令运行一个npm ci,紧接着运行一个npm测试。

23、install

安装一个包。

24、link

符号链接包文件夹:

npm link (in package dir)
npm link [<@scope>/]<pkg>[@<version>]

alias: npm ln

25、logout

退出注册表:

npm logout [--registry=<url>] [--scope=<@scope>]

当登录到支持基于令牌的身份验证的注册表时,告诉服务器结束此令牌会话。这将使令牌在任何地方失效,而不仅仅是在当前环境中。当登录到使用用户名和密码身份验证的遗留注册中心时,这将清除用户配置中的凭据。在这种情况下,它只会影响当前环境。如果——scope被提供,这将找到连接到该范围(如果设置)的注册中心的凭据。

26、ls

列出所有已安装的包。

27、outdated

检查过期的包。

28、publish

发布一个包:

npm publish [<tarball>|<folder>] [--tag <tag>] [--access <public|restricted>] [--otp otpcode] [--dry-run]

Publishes '.' if no argument supplied
Sets tag 'latest' if no --tag specified

29、uninstall

删除一个包:

npm uninstall [<@scope>/]<pkg>[@<version>]... [-S|--save|-D|--save-dev|-O|--save-optional|--no-save]

aliases: remove, rm, r, un, unlink

30、shrinkwrap

锁定发布的依赖项版本:

npm shrinkwrap

此命令重新使用package-lock.json转换成可发布的npm-shrinkwrap.json或简单地创建一个新的。该命令创建和更新的文件将优先于任何其他现有或未来的package-lock.json文件。有关npm中包锁的设计和用途的详细说明,请参见npm-package-locks。

赞(0) 打赏
未经允许不得转载:srcmini » npm命令行中文参考文档详解
分享到: 更多 (0)

评论 抢沙发

评论前必须登录!

 

觉得文章有用就打赏一下文章作者

微信扫一扫打赏