跳至主要内容

在 Git 中缓存您的 GitHub 凭据

如果您使用 HTTPS 克隆 GitHub 仓库,我们建议您使用 GitHub CLI 或 Git Credential Manager (GCM) 来记住您的凭据。

平台导航

提示:如果您使用 SSH 克隆 GitHub 仓库,则可以使用 SSH 密钥进行身份验证,而不是使用其他凭据。有关设置 SSH 连接的信息,请参阅 "使用 SSH 连接到 GitHub。"。

GitHub CLI

当您选择 HTTPS 作为 Git 操作的首选协议并回答“是”以确认您是否要使用 GitHub 凭据对 Git 进行身份验证时,GitHub CLI 会自动为您存储 Git 凭据。

  1. 安装 GitHub CLI 在 macOS、Windows 或 Linux 上。
  2. 在命令行中,输入 gh auth login,然后按照提示操作。
    • 当提示您输入 Git 操作的首选协议时,请选择 HTTPS
    • 当被问及是否要使用您的 GitHub 凭据对 Git 进行身份验证时,请输入 Y

有关使用 GitHub CLI 进行身份验证的更多信息,请参阅 gh auth login

Git 凭据管理器

Git 凭据管理器 (GCM) 是另一种安全存储您的凭据并通过 HTTPS 连接到 GitHub 的方法。使用 GCM,您无需手动 创建和存储个人访问令牌,因为 GCM 会代表您管理身份验证,包括 2FA(双重身份验证)。

  1. 使用 Homebrew 安装 Git

    brew install git
    
  2. 使用 Homebrew 安装 GCM

    brew install --cask git-credential-manager
    

对于 macOS,您无需运行 git config,因为 GCM 会自动为您配置 Git。

下次您克隆需要身份验证的 HTTPS URL 时,Git 会提示您使用浏览器窗口登录。您可能首先会被要求授权 OAuth 应用程序。如果您的帐户或组织需要 双重身份验证,您还需要完成 2FA 挑战。

成功验证后,您的凭据将存储在 macOS 密钥链中,并在您每次克隆 HTTPS URL 时使用。除非您更改凭据,否则 Git 将不再要求您在命令行中输入凭据。

  1. 安装 Git for Windows,其中包含 GCM。有关更多信息,请参阅其 发布页面 上的“Git for Windows 版本”。

我们建议始终安装最新版本。至少安装版本 2.29 或更高版本,这是第一个提供对 GitHub 的 OAuth 支持的版本。

下次您克隆需要身份验证的 HTTPS URL 时,Git 会提示您使用浏览器窗口登录。您可能首先会被要求授权 OAuth 应用程序。如果您的帐户或组织需要 双重身份验证,您还需要完成 2FA 挑战。

成功验证后,您的凭据将存储在 Windows 凭据管理器中,并在您每次克隆 HTTPS URL 时使用。除非您更改凭据,否则 Git 将不再要求您在命令行中输入凭据。


警告:旧版本的 Git for Windows 附带了 Git Credential Manager for Windows。此旧产品不再受支持,无法通过 OAuth 连接到 GitHub。我们建议您升级到 最新版本的 Git for Windows

警告:如果您在 Credential Manager for Windows 中缓存了不正确或过时的凭据,Git 将无法访问 GitHub。要重置缓存的凭据,以便 Git 提示您输入凭据,请在 Windows 控制面板的“用户帐户”>“凭据管理器”下访问凭据管理器。查找 GitHub 条目并将其删除。

对于 Linux,安装 Git 和 GCM,然后配置 Git 以使用 GCM。

  1. 从您的发行版的打包系统安装 Git。说明将根据您运行的 Linux 版本而有所不同。

  2. 安装 GCM。请参阅 GCM 仓库中的说明,因为它们会根据您运行的 Linux 版本而有所不同。

  3. 配置 Git 使用 GCM。您可以选择几种后备存储,因此请参阅 GCM 文档以完成设置。有关更多信息,请参阅 "GCM Linux。"。

下次您克隆需要身份验证的 HTTPS URL 时,Git 会提示您使用浏览器窗口登录。您可能首先会被要求授权 OAuth 应用程序。如果您的帐户或组织需要 双重身份验证,您还需要完成 2FA 挑战。

成功验证后,您的凭据将存储在您的系统上,并在您每次克隆 HTTPS URL 时使用。除非您更改凭据,否则 Git 将不再要求您在命令行中输入凭据。

有关在 Linux 上存储凭据的更多选项,请参阅 Pro Git 中的 凭据存储


有关更多信息或报告 GCM 问题,请参阅 GCM 官方文档 "Git Credential Manager。"。