node.js - 在 package.json 中依赖 GitLab 存储库时获取最新版本

标签 node.js npm gitlab

我的私有(private) GitLab 存储库存储了一个 NodeJs 模块(它包含 package.jsonindex.js)。在另一个项目中,我想使用

将此存储库作为依赖项引用
"package-name": "git+ssh://git@gitlab01:path/to/repo#branch"

地点:
- «gitlab01» 是我公司 GitLab 服务器的主机名(可在我的网络中解析)
- “branch”是我正在推送东西的分支,应该是 可通过 npm install 进行更新。

到目前为止,我只能通过使用 GitLab 中的附加标签来更新到新版本,而不是每次都必须在 package.json 中替换的 branch(例如 v0.1.3)。然后我必须删除“node_modules”文件夹并运行 npm install 来进行全新更新。

如何才能让 npm install 使用最新的提交,而不需要每次在 GitLab 中手动添加标签并在 package.json 中更改它?

最佳答案

您可以使用semantic versions而是分支名称。要设置您的“包”存储库,应将版本(标签)与分支相匹配,例如:

git checkout branch100
npm version 1.0.0
git push
git checkout branch110
npm version 1.1.0
git push
...
git push --tags

然后转到您的“项目”并在 package.json 中设置:

"package-name": "git+ssh://git@gitlab01:path/to/repo#semver:>1.0.0"

然后:

npm install

它将安装 1.1.0 版本。仔细阅读 semver(版本、范围等)

关于node.js - 在 package.json 中依赖 GitLab 存储库时获取最新版本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49691468/

相关文章:

javascript - 如何解决浏览器端AJAX请求无法向本地服务器发送数据的问题?

node.js - 如何从 PHP 文件运行 node.js 文件

node.js - npm start 在 CRA "with no error"中不起作用

git - 如何正确更新 package-lock.json 文件中的 mem 包

kubernetes - GitLab Runner 无法克隆,无法获取颁发者证书

continuous-integration - 如何在 30 天后删除 GitLab-CI 作业

node.js - 检查 semver 是否正确

node.js - 在 Electron 应用程序中使用 Dbus 包(构建过程)

c# - 尽管有效的正则表达式和激活的解析在 gitlab 中没有覆盖率报告

node.js - 在共享主机上运行 Node 应用程序(它几乎可以工作)