从Git安装npm到特定版本
假设我已经为Node.js编写了一个模块,我想使其保密。我知道我可以(应该)添加以下行:
"private": "true"
到package.json
文件,我也知道我可以npm install
使用文件系统路径或git存储库(包括GitHub)的链接来使用此模块。
我也知道我可以将这样的文件系统路径或git repo的链接放入package.json
,以便该dependencies
部分看起来像这样:
"dependencies": { "myprivatemodule": "git@github.com:..."
}
我现在想要的不是链接到最新版本,而是链接到特定版本。我知道的唯一可能性是使用其ID链接到特定提交。但这比使用版本号(例如)缺乏可读性和可维护性0.3.1
。
所以我的问题是:是否仍然可以指定这样的版本号,并使npm在git存储库中搜索包含该版本的最新提交?
如果没有,您如何在项目中解决此问题?您使用提交ID还是对此有更好的解决方案?
回答:
一个依赖关系必须是可以从registry
要由刚安装指定一个version
描述符。
当然,您可以创建并使用自己的注册表,而不是registry.npmjs.org
不应该公开共享您的项目。
但是,如果不在注册表中,则必须使用URL或Git URL进行引用。要使用Git URL指定版本<commit-
ish>,请在末尾作为URL片段包含相应的标记(例如标签)。
例如,对于名为的标签0.3.1
:
"dependencies": { "myprivatemodule": "git@github.com:...#0.3.1"
}
:以上代码段显示的基本网址与问题中发布的网址相同。
删除的部分(
...
)应该填写:"myprivatemodule": "git@github.com:{owner}/{project}.git#0.3.1"
而且,当无法使用SSH访问时,将需要使用其他地址格式:
"myprivatemodule": "git://github.com/{owner}/{project}.git#0.3.1"
根据您的操作系统,您也许还可以link
将依赖项从Github中克隆到另一个文件夹中。
以上是 从Git安装npm到特定版本 的全部内容, 来源链接: utcz.com/qa/417310.html