You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Git Credential Manager提示浏览器阻止Cookie的问题排查求助

问题分析与排查建议

背景总结

Windows Server 2012升级至2019后,出现以下Git认证异常:

  • 手动执行git clone https://<my-azure-devops-project>时,Git Credential Manager (GCM) 弹出"浏览器阻止Cookie"错误,已确认浏览器启用所有Cookie(含第三方Cookie)
  • 同一机器上Azure DevOps管道通过PAT认证可正常克隆/操作仓库,但某Git LFS仓库切换分支时会触发相同弹窗,导致管道停滞
  • 已更新至Git 2.41.0.windows.1,问题未解决

排查与解决建议

1. 检查IE增强安全配置(IE ESC)

Windows Server 2019默认启用IE增强安全配置,可能限制GCM调用的浏览器会话获取Cookie:

  • 打开服务器管理器 → 进入本地服务器 → 找到IE增强安全配置
  • 将管理员和用户的配置均设为关闭,测试克隆操作
  • 若有效,可将dev.azure.com添加到IE/Edge的可信站点列表,再重新开启IE ESC

2. 切换GCM的认证模式

强制GCM使用设备码认证,绕开浏览器Cookie验证逻辑:

git config --global credential.azuredevopsauthority "DeviceCode"

执行后重新克隆,会生成设备码,按提示访问指定网页输入码完成认证,无需依赖浏览器会话Cookie。

3. 针对Git LFS仓库单独配置认证

LFS拉取对象时的认证逻辑可能独立于主Git操作,可直接为该仓库指定PAT:

# 进入目标LFS仓库目录
cd <lfs-repo-path>
# 禁用该仓库的GCM凭据助手,强制使用PAT认证
git config --local credential.helper ""
# 配置LFS使用PAT访问
git config --local lfs.url "https://<your-pat>@dev.azure.com/<org-name>/<proj-name>/_git/<repo-name>/info/lfs"

管道中执行分支切换前,可预先运行上述配置,避免触发弹窗。

4. 重置GCM凭据缓存

旧的凭据缓存可能与新系统环境冲突,清除后重新认证:

git credential-manager-core erase

执行后按提示输入Azure DevOps仓库的完整URL(如https://dev.azure.com/<org>/<proj>),完成缓存清除后重新尝试克隆。

5. 开启GCM日志定位具体错误

通过日志查看认证过程的详细错误信息:

# 临时开启GCM跟踪日志(仅当前会话有效)
set GCM_TRACE=1
# 执行克隆或分支切换操作
git clone https://<my-azure-devops-project>

日志会输出GCM与浏览器、凭据存储交互的细节,可定位是浏览器会话问题、系统权限限制还是其他配置冲突。

6. 验证GCM版本兼容性

确认Git附带的GCM版本适配Windows Server 2019:

git credential-manager-core version

若版本较旧,可单独下载安装最新版Git Credential Manager(Windows版本),替换现有组件后测试。


内容的提问来源于stack exchange,提问作者Carmelo

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.18 11:35:36