Git Credential Manager (GCM) 是一个基于 .NET 构建的安全 Git 凭据助手,可在 Windows、macOS 和 Linux 上运行。它旨在为每个主要源代码控制托管服务和平台提供一致且安全的身份验证体验,包括多因素身份验证。
GCM 支持(按字母顺序排列)Azure DevOps、Azure DevOps Server(以前称为 Team Foundation Server)、Bitbucket、GitHub 和 GitLab。与 Git 的内置凭据帮助程序(Windows:wincred、macOS:osxkeychain、Linux:gnome-keyring/libsecret)相比,后者仅为用户名/密码提供单因素身份验证支持。
GCM 取代了适用于 Windows 的基于 .NET Framework 的 Git 凭据管理器以及适用于 Mac 和 Linux 的基于 Java 的 Git 凭据管理器。
请参阅当前版本 GCM 的安装说明,了解适合您操作系统的安装选项。
Git Credential Manager 目前可用于 Windows、macOS 和 Linux*。 GCM 仅适用于 HTTP(S) 遥控器;你仍然可以通过 SSH 使用 Git:
特征 | 视窗 | macOS | Linux* |
---|---|---|---|
安装程序/卸载程序 | ✓ | ✓ | ✓ |
安全平台凭证存储(查看更多) | ✓ | ✓ | ✓ |
Azure DevOps 的多重身份验证支持 | ✓ | ✓ | ✓ |
GitHub 的双因素身份验证支持 | ✓ | ✓ | ✓ |
Bitbucket 的双因素身份验证支持 | ✓ | ✓ | ✓ |
GitLab 的双因素身份验证支持 | ✓ | ✓ | ✓ |
Windows 集成身份验证 (NTLM/Kerberos) 支持 | ✓ | 不适用 | 不适用 |
基本 HTTP 身份验证支持 | ✓ | ✓ | ✓ |
代理支持 | ✓ | ✓ | ✓ |
amd64 支持 | ✓ | ✓ | ✓ |
x86 支持 | ✓ | 不适用 | ✗ |
arm64 支持 | 尽最大努力 | ✓ | ✓ |
armhf 支持 | 不适用 | 不适用 | ✓ |
(*) GCM 保证仅支持 dotnet 官方支持的 Linux 发行版。
Git Credential Manager 尝试与最广泛的 Git 版本兼容(在合理范围内)。然而,有一些已知的有问题的 Git 版本不兼容。
git 1.x
Git 的初始主要版本不受 GCM 支持或测试。
git 2.26.2
此版本的 Git 在解析 GCM 依赖的凭据配置方面引入了重大更改。此问题已在 Git 项目的提交12294990
中修复,并在 Git 2.27.0 中发布。
一旦安装并配置完毕,Git Credential Manager 就会被 Git 隐式调用。您无需执行任何特殊操作,并且 GCM 不适合由用户直接调用。例如,当推送 ( git push
) 到 Azure DevOps、Bitbucket 或 GitHub 时,将自动打开一个窗口并引导您完成登录过程。 (对于每个 Git 主机,此过程看起来会略有不同,甚至在某些情况下,无论您连接到本地还是云托管的 Git 主机。)同一存储库中的后续 Git 命令将重新使用现有凭据或GCM 在有效期间一直存储的令牌。
在此处阅读完整的命令行用法。
请参阅此处的详细信息。
请参阅文档索引以获取其他资源的链接。
想了解 GCM 项目的下一步发展吗?看看项目路线图吧!您可以在此处找到有关路线图构建以及如何解释它的更多详细信息。
该项目欢迎贡献和建议。请参阅贡献指南以开始使用。
该项目遵循 GitHub 的开源行为准则。
我们获得了麻省理工学院的许可。使用 GitHub 徽标时,请务必遵循 GitHub 徽标指南。