去哪儿 npm 源

使用方法

配置 qnpm

通过 alias 命令

alias qnpm="npm --registry=https://repo.corp.qunar.com/artifactory/api/npm/npm-qunar/ --cache=$HOME/.npm/.cache/qnpm --userconfig=$HOME/.qnpmrc"

或者在 ~/.bash_profile 中增加如下配置

# alias for qnpm
alias qnpm="npm --registry=https://repo.corp.qunar.com/artifactory/api/npm/npm-qunar/ --cache=$HOME/.npm/.cache/qnpm --userconfig=$HOME/.qnpmrc"

运行

source ~/.bash_profile

安装模块

通过 qnpm 安装模块,会优先在 qnpm 源中进行搜索,如果模块或者需要的版本不存在,会尝试在 registry.npmjs.org 中进行搜索,找到后,通过该源进行下载并在 qnpm 的后台同步该模块。

$ qnpm install [name]

qnpm 使用命名模块进行发布(Scoped Package),命名(Scoped)可以理解为npm模块的命名空间。每一个私有源拥有自己的命名空间,如下所示:

@qnpm/project-name

其中,@qnpm 就是 qnpm 源的命名空间。project-name 是 qnpm 下的模块名称。

引入命名空间的概念是为了避免在 qnpm 中发布的模块与 npm 上的模块产生冲突。创建一个 qnpm 模块的方法为

mkdir test && cd test
qnpm init --scope=qnpm

默认生成的 package.json 内容为:

{
  "name": "@qnpm/test",
  "version": "1.0.0",
  "description": "",
  "main": "index.js",
  "directories": {
    "test": "test"
  },
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "author": "",
  "license": "ISC"
}

可以看到 name 为 @qnpm/test ,发布该模块的命令为:

qnpm publish

发布前 无需登录, 但需要有 发布权限

遇到问题怎么办?

联系邮箱:corp-fe@qunar.com

联系QTalk:mik.zhang


Copyright 2013 - 2017 © ued.qunar.com