yarn
yarn 经典版 (1.x)
请注意,yarn 经典版可以识别
.npmrc文件配置。
经典版本能够重新调整.npmrc文件,但也提供了自己的名为.yarnrc的配置文件。
要设置一个注册中心(registry),创建一个文件并定义它。
// .yarnrc
registry "http://localhost:4873"
默认情况下,yarn@1.x 不会在每个请求中发送令牌,除非手动选择加入,如果您已启用软件包的访问权限,这可能会导致出现 403 错误。
要更改此行为,请在配置中启用 always-auth :
always-auth=true
或者运行
npm config set always-auth true
yarn 现代版 (>=2.x)
Yarn 现代版不再识别
--registry或.npmrc文件。
要定义注册中心(registry),你必须使用项目根目录下的 .yarnrc.yml 或者全局配置。
当你发布软件包时,npmRegistryServer 必须配置。 请记住,package.json 中的 publishConfig.registry 将覆盖这个配置。
// .yarnrc.yml
npmRegistryServer: "http://localhost:4873"
unsafeHttpWhitelist:
- localhost
unsafeHttpWhitelist仅在你不使用具有有效证书的https时才需要配置。
使用作用域(scope) 也是可以的,并且更加细分,如果需要的话,你可以为作用域定义 token 配置。
npmRegistries:
"https://registry.myverdaccio.org":
npmAlwaysAuth: true
npmAuthToken: <TOKEN>
npmScopes:
my-company:
npmRegistryServer: https://registry.myverdaccio.org
npmPublishRegistry: https://registry.myverdaccio.org
要从 CLi 登录,使用:
yarn npm login --scope my-company
故障排除
已知问题
yarn npm login问题,阅读 verdaccio#1737 or yarn-berry#1848.yarn npm publish不发送 README,请阅读 verdaccio#1905 或 yarn-berry#1702。