gpt4 book ai didi

javascript - 将 myproject/.npmrc 与注册表一起使用

转载 作者:IT老高 更新时间:2023-10-28 21:58:18 25 4
gpt4 key购买 nike

如何在我的项目中设置一个 .npmrc 文件来定义我自己的私有(private)注册表?我不想在我的用户配置 .npmrc 中有这种配置。每个其他开发人员都应该能够只 git clone 项目并运行 npm install

这是我目前所拥有的:

// .npmrc
registry=https://npm.fury.io/AUTH_TOKEN/me/

// package.json:
{
"name": "webapp",
"description": "",
"version": "1.0.0",
"private": true,
"dependencies": {
"jquery": "1.2.3",
"myPrivateLibFromNpmFury": "0.0.4"
}
}

npm install myPrivateLibFromNpmFury

返回

npm 错误! 404 注册表在 https://registry.npmjs.org/myPrivateLibFromNpmFury 上为 GET 返回 404

最佳答案

正如@Paulpro 和@Alexey B 所指出的那样。它的大部分已经工作了,但是我不能马上看到它,可能是因为我没有正确地重新加载我的bash 环境。但在那之后,我遇到了由注册表 url 引起的 npm outdated 的其他问题。事实证明,npm 只能有一个注册表 url,(这很疯狂),如果你想使用私有(private)和公共(public) npm-modules,你必须通过你的私有(private)注册表代理公共(public) npm-module 注册表。幸运的是 fury.io 支持这一点,所以在我的例子中,而不是使用这个:

//.npmrc
registry=https://npm.fury.io/AUTH_TOKEN/me/

我必须使用这个:

//.npmrc
registry=https://npm-proxy.fury.io/AUTH_TOKEN/USER_NAME/

更新:可以解决这个问题(npm 只绑定(bind)到一个注册表)。首先你必须添加一个 scope到你所有的私有(private)包。现在使用 .npmrc 您可以链接范围的注册表,并且您不再需要任何代理。

//.npmrc
@project_a:registry=https://npm.fury.io/AUTH_TOKEN/USER_NAME/
@project_b:registry=https://npm.fury.io/AUTH_TOKEN/USER_NAME/
@company_a:registry=https://npm.fury.io/AUTH_TOKEN/USER_NAME/

关于javascript - 将 myproject/.npmrc 与注册表一起使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34652563/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com