问题描述

问题描述

问题描述

我正在使用以下命令:

ssh-keygen -t ed25519 -C "my description" -N "" -f ~/.ssh/gh-test
gh repo deploy-key add ~/.ssh/gh-test

但后来我得到了这个错误:

To get started with GitHub CLI, please run:  gh auth login
Alternatively, populate the GH_TOKEN environment variable with a GitHub API authentication token.

https://cli.github.com/manual/gh_repo_deploy-key_add

我的假设

由于 github.com 仅具有个性化访问令牌,并且我不想向存储库添加“仅限机器的用户”,所以我被迫使用 ssh 密钥。

但这迫使我再次使用 API-KEY。我原以为整个想法是不必使用它。

我究竟做错了什么?

更新

我最初的用例是使用id_rsa密钥来执行以下操作:

 gh release create --notes "v1.2" "v1.2" README.md

但事实证明,该gh工具只能与 API_KEY 一起使用。因此,我将创建另一个与该存储库关联的“虚拟”github 用户,以便我可以生成仅具有“一个”存储库所需范围的 API_KEY。

遗憾的是,GH 没有像 gitlab 那样的“项目访问令牌”。

https://docs.github.com/en/developers/overview/managing-deploy-keys#deploy-keys

答案1

您需要验证 GitHub 客户端才能部署您的 ssh 密钥。

所以是的,您需要一个个性化访问令牌,但仅用于部署密钥。之后您应该能够使用 ssh 密钥访问您的存储库。

相关内容