微软的 Git 凭据管理器指南 | AI生成和翻译

Home 2026.05

这是 Git Credential Manager (GCM) — 微软官方安全 Git 凭据助手,版本 2.8.0。

功能概述:

一款跨平台(Windows/macOS/Linux)的 .NET 应用程序,用于处理 Git 的 HTTPS 身份验证。 当你执行 git pushgit pull,而 Git 需要凭据时,GCM 会拦截该请求,并为你处理基于 OAuth、设备码或浏览器的身份验证流程。

关键信息:

架构:

Program.Main 创建 CommandContext,注册 5 个主机提供程序(各有优先级),然后运行应用:

正常优先级:
  - AzureReposHostProvider   (Azure DevOps)
  - BitbucketHostProvider    (Bitbucket)
  - GitHubHostProvider       (GitHub)
  - GitLabHostProvider       (GitLab)

低优先级(回退):
  - GenericHostProvider      (任何需要用户名/密码的 HTTPS 远程仓库)

HostProviderRegistry 根据 Git 凭据输入参数(主机名、协议等),按优先级顺序查询每个提供程序,并选择合适的提供程序。

项目结构:

src/ shared/ 跨平台核心 Core/ 核心抽象(IHostProvider、HostProviderRegistry 等) Git-Credential-Manager/ 主入口点 + 应用配置 GitHub/ GitHub OAuth 设备码流程 GitLab/ GitLab OAuth Atlassian.Bitbucket/ Bitbucket OAuth Microsoft.AzureRepos/ Azure DevOps 身份验证 GitHub.UI.Avalonia/ 专用于 GitHub 的 Avalonia UI TestInfrastructure/ 共享测试模拟 windows/ Windows 安装程序(Inno Setup) linux/ Linux 打包 osx/ macOS 安装程序

它用统一的 .NET 代码库替代了旧版的 Windows 版 Git Credential Manager(.NET Framework)以及 Mac 和 Linux 版 Git Credential Manager(Java)。

与你相关:你已经在使用 Git 凭据管理器——这正是该工具的上游源代码。如果你需要调试 HTTPS 远程仓库(尤其是通过你的 mihomo 代理)的身份验证问题,Git 调用的正是这段代码。


Back Donate