假设我已经为 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,或者是否有更好的解决方案?
原文由 Golo Roden 发布,翻译遵循 CC BY-SA 4.0 许可协议
必须从
registry
获得 依赖 项,只需 指定version
描述符 即可安装。如果您的项目不应该公开共享,您当然可以 创建和使用自己的注册表 而不是
registry.npmjs.org
。但是,如果它不在注册表中,则必须通过 URL 或 Git URL 引用它。要使用 Git URL 指定版本,请在 URL 片段 的末尾包含适当的
<commit-ish>
,例如标签。例如,对于名为
0.3.1
的标签:根据您的操作系统,您还可以
link
到您从 Github 克隆的另一个文件夹中的依赖项。