首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >npm安装私有github回购github操作

npm安装私有github回购github操作
EN

Stack Overflow用户
提问于 2022-07-24 05:09:34
回答 2查看 447关注 0票数 0

我有一个nodejs项目,它使用私有的git作为它的依赖项之一。它在package.json中定义如下:

"repo name": "git+https://{access_token}@github.com/{owner}/{repo name}.git#master"

我的工作流文件如下所示:

代码语言:javascript
运行
复制
name: Tests

on: [push]

jobs:
  test:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v2
      - uses: actions/setup-node@v3
        with:
          node-version: 16
      - name: Install modules
        run: npm ci
      - name: Run tests
        run: npm test

然而,npm cinpm ERR! remote: Repository not found.上失败了

在我的本地机器和干净的ubuntu测试机器上使用npm ci,在我测试它时工作得很好。在github操作时,我不知道是什么导致了这个问题。

我已经阅读了许多其他的形式,但找不到任何可行的解决方案,或适用于我的情况。如果你对导致这件事的原因有任何想法的话,我很乐意听到你的线索。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2022-07-27 05:50:39

来自actions/checkout的auth令牌是持久化的。因此,当从GitHub获取npm依赖项时,可能会再次使用它,这是不起作用的。

您可以选择退出,方法是传递输入persist-credentials,如下所示:

代码语言:javascript
运行
复制
steps:
  - uses: actions/checkout@v2
    with:
      persist-credentials: false
票数 3
EN

Stack Overflow用户

发布于 2022-07-25 07:01:38

您可以在签出步骤之后添加操作,GitHub可以访问您的私人回购依赖项。但是您应该在package.json中更改您的包名,如下所示

代码语言:javascript
运行
复制
"some_package": "git+ssh://git@github.com:<Org_Name>/<Repo_Name>.git#<Branch_name>"

确保将服务器的私钥作为秘密公钥添加到GitHub SSH密钥中。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73095929

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档