如何覆盖特定项目的全局纱线注册表

How to override global yarn registry for particular project

对于大多数项目,我从内部服务器中提取包,所以它是由

添加的

yarn config set registry http://custom-packages-server.com

但现在在新项目中我想使用不同的(默认),但仅在该特定项目中使用它。据我了解,如果我 运行 在新项目目录

中执行以下命令

yarn config set registry https://registry.yarnpkg.com

它也将更新所有其他项目的全局注册表值,因此他们也将在新位置寻找包。

那么在 yarn 中是否有可能只覆盖特定项目的全局注册表记录?

找到实现该目标的方法。

事实证明,您可以在项目目录中使用 .yarnrc 文件(是的,与 .npmrc 几乎一样)。在那里你可以指定纱线将首先查看的自定义配置属性。

这就是我的 .yarnrc 文件现在的样子。

registry "https://registry.yarnpkg.com"

也可以为一个 yarn 命令临时覆盖注册表,而不必修改文件:

yarn --registry=https://registry.company.com/
npm config delete registry

你可以删除旧的 yarnrc