npm Package Registry

为您的用户或组织发布 npm 包。

要求

要使用 npm 包注册表,您需要安装 Node.js 以及与之配套的软件包管理器,例如 Yarnnpm 本身。

该注册表支持作用域和非作用域软件包。

以下示例使用具有作用域 @testnpm 工具。

配置软件包注册表

要注册软件包注册表,您需要配置一个新的软件包源。

  1. npm config set {scope}:registry https://gitea.example.com/api/packages/{owner}/npm/
  2. npm config set -- '//gitea.example.com/api/packages/{owner}/npm/:_authToken' "{token}"
参数描述
scope软件包的作用域
owner软件包的所有者
token您的个人访问令牌

例如:

  1. npm config set @test:registry https://gitea.example.com/api/packages/testuser/npm/
  2. npm config set -- '//gitea.example.com/api/packages/testuser/npm/:_authToken' "personal_access_token"

或者,不使用作用域:

  1. npm config set registry https://gitea.example.com/api/packages/testuser/npm/
  2. npm config set -- '//gitea.example.com/api/packages/testuser/npm/:_authToken' "personal_access_token"

发布软件包

在项目中运行以下命令发布软件包:

  1. npm publish

如果已经存在相同名称和版本的软件包,您无法发布该软件包。您必须先删除现有的软件包。

删除软件包

通过运行以下命令删除软件包:

  1. npm unpublish {package_name}[@{package_version}]
参数描述
package_name软件包名称
package_version软件包版本

例如

  1. npm unpublish @test/test_package
  2. npm unpublish @test/test_package@1.0.0

安装软件包

要从软件包注册表中安装软件包,请执行以下命令:

  1. npm install {package_name}
参数描述
package_name软件包名称

例如:

  1. npm install @test/test_package

给软件包打标签

该注册表支持版本标签,可以通过 npm dist-tag 管理:

  1. npm dist-tag add {package_name}@{version} {tag}
参数描述
package_name软件包名称
version软件包版本
tag软件包标签

例如:

  1. npm dist-tag add test_package@1.0.2 release

标签名称不能是有效的版本。所有可解析为版本的标签名称都将被拒绝。

搜索软件包

该注册表支持搜索,但不支持像 author:gitea 这样的特殊搜索限定符。

支持的命令

  1. npm install
  2. npm ci
  3. npm publish
  4. npm unpublish
  5. npm dist-tag
  6. npm view
  7. npm search