.npmrc和.yarnrc配置文件介绍:分别用于 Node.js 中的 npm(Node Package Manager)和 Yarn 包管理工具

.npmrc.yarnrc 是两个配置文件,分别用于 Node.js 中的 npm (Node Package Manager)和 Yarn 包管理工具。它们存储了与包管理相关的配置选项,允许用户自定义和控制包的安装、版本、缓存等行为。下面是它们的详细说明:

1. .npmrc 文件

.npmrcnpm 的配置文件,存储了关于 npm 行为的各种自定义设置。你可以在该文件中设置全局配置、项目级配置,甚至是特定于用户的配置。

常见的 .npmrc 配置项:

registry :指定npm包的注册表地址,默认为 https://registry.npmjs.org/。你可以将其修改为其他镜像源(如淘宝镜像/华为镜像)来加速包的下载。

python 复制代码
registry=https://registry.npm.taobao.org
https://mirrors.huaweicloud.com/repository/npm/

prefix:指定全局安装包的位置,通常用来更改全局模块安装的目录。

python 复制代码
prefix=/path/to/global/modules

cache:指定 npm 缓存的目录。

python 复制代码
cache=/path/to/npm/cache

authToken:用于设置私有 npm 仓库的认证令牌

python 复制代码
//registry.npmjs.org/:_authToken=your-token

save-exact :默认情况下,npm 安装依赖时会添加版本范围(如 ^1.2.3)。如果设置 save-exact=true,npm 将始终安装指定版本。

python 复制代码
save-exact=true

.npmrc 文件可以存在于多级别:

  • 全局配置 :通常位于 ~/.npmrc 或系统目录中。
  • 项目级配置:位于项目的根目录下,可以为该项目单独设置配置。
  • 用户级配置 :存储在当前用户的主目录下,如 ~/.npmrc

2. .yarnrc 文件

.yarnrcYarn 的配置文件,功能与 .npmrc 类似,但它是为 Yarn 包管理器提供配置选项。

常见的 .yarnrc 配置项:
  • registry :指定 Yarn 包的注册表地址,与 npm 的配置类似,默认为 https://registry.yarnpkg.com。你可以更改为其他源(如淘宝镜像)来加速下载。
python 复制代码
registry "https://registry.npm.taobao.org"

cache-folder:指定缓存目录的位置。

python 复制代码
cache-folder "/path/to/yarn/cache"

global-folder:指定全局包安装的目录。

python 复制代码
global-folder "/path/to/global/packages"

save-exact:与 npm 类似,控制是否安装精确版本的依赖。

python 复制代码
save-exact true

network-timeout:设置网络请求的超时(单位是毫秒)。

python 复制代码
network-timeout 60000

.yarnrc 也有类似 .npmrc 的作用,它可以存在多个级别:

  • 全局配置~/.yarnrc
  • 项目级配置 :项目根目录下的 .yarnrc 文件。
区别和使用
  • 用途 :两者的主要作用是为各自的包管理器提供配置。.npmrc 用于 npm,.yarnrc 用于 Yarn。
  • 格式:它们的配置格式基本相似,都是简单的键值对格式。
  • 功能:它们都允许用户定制注册表地址、缓存目录、网络超时、版本策略等。

通常来说,如果你在一个项目中同时使用 npm 和 Yarn,这两个文件都会出现在项目根目录下。不过,不建议同时使用两个包管理工具,以避免配置冲突和不必要的问题。

相关推荐
FungLeo10 小时前
成为全栈·Node 后端篇·阅读量防刷:去重、冷却与计数写分离
node.js·读写分离·数据去重·接口防刷·成为全栈·数据冷却
CharlesYu0111 小时前
前端性能优化的第一性原理,是不断缩短“用户发起意图 → 获得可用结果”之间的时间
前端
平头哥技术团队12 小时前
Day 21 _ 页内锚点_给每段起个 id,目录写 href=_#id_,点一下页面就滚到那一段
前端·html·html5
子兮曰13 小时前
Bun v1.4.1 深度解析:从 Zig 到 Rust,一场 11 天、64 个 AI 代理的语言迁徙
前端·后端·bun
人民广场吃泡面13 小时前
什么是AI Agent?它又能给前端带来哪些效率提升?
前端·人工智能
中科三方14 小时前
两家域名注册商资质被ICANN终止:企业域名资产安全再受关注
前端·网络·安全·域名
bug总结14 小时前
uniapp vue3全局方法注册使用
前端·javascript·uni-app
华无丽言14 小时前
如何在宜搭中实现获取子表中的字段值赋值到父表中?
前端·javascript·低代码
IT_陈寒15 小时前
Vue的computed属性竟然坑了我一把
前端·人工智能·后端
威斯软科的老司机15 小时前
通俗讲解 CNN 图像识别、向量 Embedding、Softmax 概率计算这三块的简化原理
前端·人工智能·ui·数字孪生