npm(1) -- JavaScript 包管理器

基于 npm(1) 官方文档翻译版本

SYNOPSIS 概要

npm <command> [args]

VERSION 版本

@VERSION@

DESCRIPTION 描述

npm 是 Node JavaScript 平台的包管理器。它将模块放在合适的地方以便 node 找到,并智能地管理依赖冲突。

灵活的配置使它支持各种用例,通常用于发布,发现,安装和开发 node 程序。

运行 npm help 来获得可用命令的列表。

INTRODUCTION 介绍

你可能因为想安装东西才使用了 npm。

使用 npm install blerg 来安装最新版本的 blerg。查看 npm-install(1) 来了解更多信息,它可以做很多事情。

使用 npm search 命令来显示所有可用的包。使用npm ls 来显示所有已经安装的包。

DEPENDENCIES 依赖关系

如果一个包引用另一个包含 git URL 的包,那么 npm 依赖已预先安装的 git。

如果 npm 试图安装的包中有一个是本地的 node 模块,并且需要编译 C++ 代码,那么 npm 将使用 node-gyp 来执行该任务。

在 Unix 系统上,node-gyp 需要 Python,make 以及像 GCC 的构建链。在 Windows 上,需要 Python 和 Microsoft Visual Studio C++。Python 3 不支持 node-gyp。更多相关信息,请访问 node-gyp 仓库node-gyp Wiki

DIRECTORIES 目录

参阅 npm-folders(5) 来了解 npm 将内容放在哪里。

特别的是 npm 有两种操作模式:

  • 全局模式: npm 将包安装在 prefix/lib/node_modules 中,而 bin 则安装在 prefix/bin 中。

  • 本地模式: npm 将包安装到当前工程的目录中,该目录默认为当前工作目录。包被安装到 ./node_modules 中,bin 被安装到 ./node_modules/.bin

默认为本地模式。可以在任意命令上使用 -g 或者 --global 让其在全局模式下运行。

DEVELOPER USAGE 开发者说明

如果你使用 npm 来开发和发布代码,请查看以下帮助主题:

  • json: 创建一个 package.json 文件。参见 package.json(5)

  • link: 使用 npm link 来将当前工作代码链接到 Node 的路径中,以便每次更改时不必重新安装。

  • install: 如果你不需要软连接,那么安装是个好主意。特别是从注册表安装其他人的代码,通过 npm install 来完成。

  • adduser: 创建帐户或登录。凭证存储在用户配置文件中。

  • publish: 使用 npm publish 命令来上传你的代码到注册表中。

CONFIGURATION 配置

npm 具有灵活的配置,从 5 个地方读取其配置选项。

  • 命令行开关: 用 --key val 设置一个配置。所有的键都有一个值,即使它们是布尔值(配置解析器不知道解析时的选项是什么)。如果没有提供值,那么该选项会被设置为布尔值 true

  • 环境变量: 通过 npm_config_ 在环境变量中加上前缀来设置配置。例如 export npm_config_key=val

  • 用户配置: $HOME/.npmrc 中的文件是一个 ini 格式的配置列表。如果存在,则进行解析。如果在 cli 或 env 中设置了 userconfig 选项,那么将会使用它。

  • 全局配置: 在 ../etc/npmrc 找到的文件(从 node 可执行文件中,默认情况下会被解析为 /usr/local/etc/npmrc)将被解析。如果在 cli、env 或者 user config 中设置了 globalconfig 选项,那么就会解析这个文件。

  • 默认: npm 的默认配置选项是在 lib/utils/config-defs.js 中定义的。这些配置不能被改变。

更多信息参见 npm-config(7)

CONTRIBUTIONS 贡献

欢迎贡献!

  • 代码: 如果你打算提交代码,请阅读 npm-coding-style(7)。你不必同意,但你必须遵循它。

  • 文档: 如果在文档中发现错误,请在 doc 文件夹中编辑相应的 markdown 文件。(不要担心会生成手册页。)

贡献者列在 npm 的 package.json 文件中,可以通过 npm view npm contributors 来查看。

如果你想贡献,但不知道要做什么,请阅读贡献指南和检查问题列表。

BUGS

当你发现问题时,请上报给我们:

确保包含 npm 命令不能按预期工作所输出的所有内容。提供 npm-debug.log 文件也是有帮助的。

你也可以在 irc://irc.freenode.net 上的 #node.js 中找到 isaacs。他毫无疑问会告诉你把输出结果放在 gist 上或者电子邮件中。

AUTHOR 作者

Isaac Z. Schlueter :: isaacs :: @izs :: [email protected]

SEE ALSO 亦可参阅

results matching ""

    No results matching ""