如果您在多个 GitHub 平台上拥有帐户,例如 GitHub.com 上的个人帐户和 GHE.com 上的托管用户帐户,您可以使用 `gh auth login` 为每个帐户进行身份验证。
您需要进行身份验证才能在给定环境中运行_任何_命令。例如,即使您运行的命令只需要读取 GitHub.com 上公共存储库的访问权限,如果您只在 GHE.com 上的帐户进行了身份验证,也无法使用此命令。因此,您应该向您想要与 GitHub CLI 一起使用的所有帐户进行身份验证。
如何为每个帐户运行命令?
完成多个帐户的身份验证后,运行命令时,GitHub CLI 有时可以自动检测您尝试访问的平台。在其他情况下,您需要在命令中提供更多信息。
当您处于特定存储库的上下文中时,GitHub CLI 会**自动检测**您的目标帐户。例如,如果您进入 `my-repo` 目录并运行 `gh repo view`,则该命令将针对该存储库的正确平台。
当 GitHub CLI 没有此上下文时,它**无法自动检测**您的目标帐户。例如,如果您运行 `gh repo list` 来列出您的帐户的存储库,GitHub CLI 将不知道您要访问哪个帐户。在这种情况下
- GitHub CLI 将默认为 GitHub.com。
- 您可以设置 `GH_HOST` 环境变量来更改此类请求的默认目标。请参阅 GitHub CLI 手册中的 gh environment。
- 某些命令允许您使用 `--hostname` 选项(例如 `gh api`)指定目标环境,或传递存储库的完整 URL(例如 `gh pr view`)。
我可以在同一平台上使用多个帐户吗?
您也可以在同一平台上使用多个帐户进行身份验证。要在这些帐户之间切换,可以使用 `gh auth switch` 命令。请参阅 GitHub CLI 手册中的 gh auth switch。