Node 项目通过 .npmrc 文件指定依赖安装源
背景
npm
命令运行时,往往通过命令行指定相关配置,最常用的便是使用 --registry
来指定依赖的安装源。
npm install --registry=https://registry.npmmirror.com
同样的效果也可以使用 .npmrc
来实现:
registry=https://registry.npmmirror.com
.npmrc
用法介绍
.npmrc
(NPM Running Configuration)可以指定 npm
命令运行时的配置内容,其中可以设置的配置见官方文档:config。
配置优先级按顺序如下:
- 项目内的配置文件(
/path/to/my/project/.npmrc
) - 用户配置文件(
~/.npmrc
) - 全局配置文件(
$PREFIX/etc/npmrc
) - NPM 内置配置文件(
/path/to/npm/npmrc
)
.npmrc
文件内以键值对的形式(key=value
)设置值:
key=value
数组:
key[]=value
key[]=value
使用 #
或 ;
来注释:
# Comment1
; Comment2
key=value
指定安装源
由于项目下的 .npmrc
优先级最高,并且配置文件只对此项目有效,不会影响其他项目。可以在项目根目录下面新建一个 .npmrc
文件指定安装源。
修改默认 registry
:
registry=https://registry.npmmirror.com
@scope
的依赖包从 https://scope.example.com
安装,其他从 https://registry.npmmirror.com
:
registry=https://registry.npmmirror.com
@scope:registry=https://scope.example.com
设置 SASS 镜像源,效果与 SASS_BINARY_SITE=https://registry.npmmirror.com/-/binary/node-sass npm install node-sass
相同:
sass_binary_site=https://registry.npmmirror.com/-/binary/node-sass
案例代码:https://github.com/mazeyqian/mazey/blob/master/.npmrc
NPM 配置快捷命令
获取当前配置指定值:
npm config get sass_binary_site
# https://registry.npmmirror.com/-/binary/node-sass
npm config get registry
# https://registry.npmmirror.com
设置配置指定值:
npm config set example_key_1 example_value_1
npm config get example_key_1
# example_value_1
显示配置列表:
npm config list
; userconfig
example_key_1 = "example_value_1"
registry = "https://registry.npmjs.org/"
注意
如果想发布 NPM,一定要注意修改 registry
至你想发布的地址,切勿将公司私有包发布到官方库中。
If you then want to publish a package for the whole world to see, you can simply override the
--registry
option for thatpublish
command.
参考
- 淘宝 npm 域名即将切换 && npmmirror 重构升级
- Can I run my own private registry?
- 解决 NPM 安装 node-sass 因为网络问题超时失败的问题
版权声明
本博客所有的原创文章,作者皆保留版权。转载必须包含本声明,保持本文完整,并以超链接形式注明作者后除和本文原始地址:https://blog.mazey.net/2950.html
(完)
Node 项目通过 .npmrc 文件指定依赖安装源的更多相关文章
- python指定pip安装源
python的pip默认的安装源的位置是国外的,导致有时候下载很慢或者直接失败我们可以切换国内的源 目前国内可用的我知道的有两个 豆瓣的:http://pypi.doubanio.com/simple ...
- react项目实践——(4)依赖安装与配置
1. 修改package.json,添加需要安装的包 { "name": "myapp", "version": "1.0.0&q ...
- react native 0.6x 在创建项目时,CocoaPods 的依赖安装步骤卡解决方案
前言 你需要做两件事 gem换源 pod repo 换源 实战 如果你已经成功安装了CocoaPods.那么这里你需要卸载它.gem换源1. 卸载CocoaPods 查看gem安装的东西 gem li ...
- 关于 Eclipse中的Web项目 部署的文件位置 查看jsp源码的部署位置
使用 eclipse 开发web项目 会默认 部署在 工作目录下: .metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps 在这里 ...
- Linux下Jenkins与GitHub自动构建Node项目(Vue)
根据上篇文章<Linux下Jenkins与GitHub自动构建NetCore与部署>,我们知道了Jenkins的强大功能,自动构建,部署了一个NetCore的Web,让开发人员专注于开发, ...
- 生成一个node项目
生成一个node项目1.创建文件夹2.文件夹中右键->在此处打开命令窗口->文件夹中打开dos3.执行:npm init //一路回车,最后y4.安装插件: C:\www\nodejs\h ...
- node项目自动化部署--基于Jenkins,Docker,Github(1)安装Jenkins
前言 每次项目代码更新后都要重新部署,如果只有一台服务器还好. 但是如果是分布式系统,动不动就很多台服务器,所以代码的自动部署就显得十分重要了. 这里用几篇文章来记录一下如何使用Jenkins,Doc ...
- visual studio使用dos命令在生成项目时复制文件到指定目录
本人使用软件:vs2015 拷贝“项目1”的 bin目录 下, 项目配置的名称(“Release”,“Debug”)目录下,所有内容到“项目2”输出目录(存在直接覆盖): xcopy $(Soluti ...
- C#项目打开/保存文件夹/指定类型文件,获取路径
C#项目打开/保存文件夹/指定类型文件,获取路径 转:http://q1q2q363.xiaoxiang.blog.163.com/blog/static/1106963682011722424325 ...
- 安装node.msi 格式的文件失败
in10 安装node.msi格式的文件,出现2503 2502 错误码, win+x 打开 在命令提示符窗口中输入: msiexec /package "安装msi格式的文件的全路径&qu ...
随机推荐
- APScheduler可能遇到的问题
uWsgi使用多进程模式启动Django项目,因此我们会有多个进程去执行这个定时任务,导致定时任务被重复执行.解决这个问题的方法,我们直接就会想到采用加锁的方式.第一个拿到锁的进程,执行定时任务,其余 ...
- 【LeetCode链表#8】翻转链表(双指针+递归)/K个一组翻转
翻转链表 力扣题目链接(opens new window) 题意:反转一个单链表. 示例: 输入: 1->2->3->4->5->NULL 输出: 5->4-> ...
- 【Azure 媒体服务】Azure Media Service Explorer 5.4.3.0 不能连接Media Service, 错误消息提示 BadRequest 和 Forbidden
问题描述 Azure Media Service Explorer 5.4.3.0 不能连接Media Service, 错误消息提示 BadRequest 和 Forbidden. 截图如下: Ba ...
- 【Filament】基于物理的光照(PBR)
1 前言 自定义Blinn Phong光照模型中实现了基础的自定义光照,与现实的光照还是有些差别,本文将实现更逼真的光照效果,即基于物理的光照(PBR). 读者如果对 Filament 不太熟 ...
- Java 可变个数形参的方法
1 /** 2 * 3 * @Description 4 * @author Bytezero·zhenglei! Email:420498246@qq.com 5 * @version 6 * @d ...
- java基础 韩顺平老师的 面向对象(基础) 自己记的部分笔记
194,对象内存布局 基本数据类型放在堆里面,字符串类型放在方法区. 栈:一般存放基本数据类型(局部变量) 堆:存放对象(Cat cat,数组等) 方法区:常量池(常量,比如字符串),类加载信息 19 ...
- Sagas论文原文读后总结
一.引子 分布式事务组件seata最近社区很活跃,刚好公司有对接seata的计划.刚好借此机会,彻底了解下seata的价值.其中有一个比较特殊的模式叫SAGA模式,听起来就很懵逼,按照官网的介绍起源于 ...
- Ubuntu 与Windows 之间搭建共享文件夹
工作中经常需要搭建Linux环境用于测试以及其他开发需求,办公电脑通常是Windows 系统,为便于让文件在两个系统之间传输,可以采取共享文件的方式实现: 1.安装samba 服务: sudo apt ...
- 摆脱鼠标系列 Trigger Suggest 快捷键 改成 Shift + Space
摆脱鼠标系列 Trigger Suggest 快捷键 改成 Shift + Space 看marp插件的时候,发现用ctrl + space 自动提示,但是我这里是输入法
- Prettier 和 ESLint 冲突解决方案 eslint-config-prettier eslint-plugin-prettier
划重点 eslint-config-prettier 禁用 eslint 冲突配置 eslint-plugin-prettier Prettier先格式化 (默认是先eslint格式化,再Pretti ...