从 Gitlab 私有存储库导入节点模块时出错
Posted
技术标签:
【中文标题】从 Gitlab 私有存储库导入节点模块时出错【英文标题】:Error while importing a node module from Gitlab private repository 【发布时间】:2018-10-26 15:36:57 【问题描述】:场景:
我开发了某种节点模块。 后来我才知道,与其将我的节点模块发布到 npm 存储库,我可以使用我自己的 Gitlab 存储库将其用作节点模块。约束是:
我必须为此活动使用私人仓库 我必须使用 https url 来获取 repo所以在谷歌搜索了几个小时后,我找到了一个解决方案,其中包括直接来自 git 存储库的依赖项。
因此我的依赖看起来像:
"my-module": "git+https://myusername:myaccesstoken@gitlab.com:Organization/Project.git#develop"
如果我执行npm install
会导致:
npm ERR! Error while executing:
npm ERR! /usr/bin/git ls-remote -h -t ssh://git@gitlab.com/organization/project.git
npm ERR!
npm ERR! Permission denied (publickey).
npm ERR! fatal: Could not read from remote repository.
npm ERR!
npm ERR! Please make sure you have the correct access rights
npm ERR! and the repository exists.
npm ERR!
npm ERR! exited with error code: 128
npm ERR! A complete log of this run can be found in:
npm ERR! /home/username/.npm/_logs/2018-05-16T13_25_37_053Z-debug.log
【问题讨论】:
【参考方案1】:假设您按照SO answer 中提到的步骤设置访问令牌
你可以尝试删除项目 url 末尾的 .git 扩展名,所以它应该看起来像
"my-module": "git+https://myusername:myaccesstoken@gitlab.com:organization/project#develop"
所以@
之后的所有内容都应该是您在地址栏中看到的 gitlab 上项目的确切 URL
【讨论】:
以上是关于从 Gitlab 私有存储库导入节点模块时出错的主要内容,如果未能解决你的问题,请参考以下文章