素材巴巴 > 程序开发 >

NPM 常用命令(四)

程序开发 2023-09-23 17:32:30

目录

1、npm diff

1.1 描述

1.2 过滤文件

1.3 配置

diff

diff-name-only

diff-unified

diff-ignore-all-space

diff-no-prefix

diff-src-prefix

diff-dst-prefix

diff-text

global

tag

workspace

workspaces

include-workspace-root

2、npm dist-tag

2.1 常用命令

2.2 描述

2.3 目的

2.4 注意事项

3、npm-docs

3.1 命令

3.2 描述


1、npm diff

1.1 描述

与其对应的 git diff 类似,此命令将打印发布到 npm 注册表的包的文件差异补丁。

1.2 过滤文件

也可以使用文件名或 glob 模式匹配指定位置参数,以便将差异补丁的结果限制为给定包的文件子集,例如:

npm diff --diff=pkg@2 ./lib/ CHANGELOG.md

 在上面的示例中,diff 输出只会打印位于文件夹 ./lib/ 中的文件的内容以及 CHANGELOG.md 文件中更改的代码行。

1.3 配置

diff

定义要在 npm diff 中比较的参数。

diff-name-only

使用 npm diff 时仅打印文件名。

diff-unified

要在 npm diff 中打印的上下文行数。

diff-ignore-all-space

比较 npm diff 中的行时忽略空格。

diff-no-prefix

不要在 npm diff 输出中显示任何源或目标前缀。

注意: 这会导致 npm diff 忽略 --diff-src-prefix 和 --diff-dst-prefix 配置。

diff-src-prefix

npm diff 输出中使用的源前缀。

diff-dst-prefix

npm diff 输出中使用的目标前缀。

diff-text

将所有文件视为 npm diff 中的文本。

global

在 "global" 模式下运行,以便将包安装到 prefix 文件夹而不是当前工作目录。

tag

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

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

当被 npm diff 命令使用时,这是用于获取 tarball 的标签,默认情况下将与本地文件进行比较。

workspace

启用在当前项目的已配置工作区的上下文中运行命令,同时通过仅运行此配置选项定义的工作区进行过滤。

workspace 配置的有效值为:

为 npm init 命令设置时,可以将其设置为尚不存在的工作区的文件夹,以创建文件夹并将其设置为项目中的全新工作区。

此值不会导出到子进程的环境中。

workspaces

设置为 true 以在 all 配置的工作区的上下文中运行命令。

显式将此设置为 false 将导致像 install 这样的命令完全忽略工作区。 未明确设置时:

此值不会导出到子进程的环境中。

include-workspace-root

为命令启用工作区时包括工作区根。

当为 false 时,通过 workspace 配置指定单个工作区,或通过 workspaces 标志指定所有工作区,将导致 npm 仅在指定的工作区上运行,而不是在根项目上运行。

2、npm dist-tag

2.1 常用命令

npm dist-tag add  []
 npm dist-tag rm  
 npm dist-tag ls []别名: dist-tags

2.2 描述

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

安装包时可以使用标记作为对版本的引用,而不是使用特定的版本号:

npm install @

例如:安装 qs 的tag 为latest

npm install qs@latest

打开安装包,可以看一下tag对应的版本号:

安装依赖时,可以指定首选标记版本:

npm install --tag 

(这也适用于解析和安装依赖的任何其他命令,例如 npm dedupenpm update 和 npm audit fix。)

除非使用 --tag 选项,否则发布包会将 latest 标记设置为已发布版本。 例如,npm publish --tag=beta

默认情况下,npm install (没有任何 @ 或 @ 说明符)安装 latest 标签。

2.3 目的

标签可用于提供别名而不是版本号。

例如,一个项目可能选择有多个开发流并为每个流使用不同的标签,例如,stablebetadevcanary

默认情况下,npm 使用 latest 标签来标识包的当前版本,而 npm install (没有任何 @ 或 @ 说明符)安装 latest 标签。 通常,项目只使用 latest 标签表示稳定版本,而使用其他标签表示不稳定版本,例如 prereleases。

一些项目使用 next 标签来标识即将发布的版本。

除了 latest,没有任何标签对 npm 本身有任何特殊意义。

2.4 注意事项

该命令以前称为 npm tag,它只创建新标签,因此具有不同的语法。

标签必须与版本号共享一个命名空间,因为它们是在同一个插槽中指定的: npm install @ 对 npm install @

可以解释为有效 semver 范围的标签将被拒绝。 例如,v1.4 不能用作标签,因为它被 semver 解释为 >=1.4.0 <1.5.0。 见 npm -g i npm@v1.4 installs from v1.4-next · Issue #6082 · npm/npm · GitHub。

避免标签出现语义问题的最简单方法是使用不以数字或字母 v 开头的标签。

3、npm-docs

3.1 命令

npm docs [ [ ...]]别名: home

3.2 描述

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

如果package.json中有指定URL,浏览器会自动对应的URL,如果没有提供则直接打开npm注册表中包的页面。

例如:运行  npm docs qs

未指定URL,例如:npm docs jiang-isarray:


标签:

素材巴巴 Copyright © 2013-2021 http://www.sucaibaba.com/. Some Rights Reserved. 备案号:备案中。