如何在Git中抑制或解决“info: detecting host provider for...”提示信息?

20

当我执行 Powershell 脚本进行 fetch / pull 操作时,会得到以下输出:

信息: 检测 '[devops 网站地址]' 的主机提供程序...

通常情况下,这不是问题,但是 Azure DevOps 将此输出视为错误并将发布阶段标记为错误状态。有没有办法可以抑制此输出或通过 GIT 解决它?

存储库的远程位置是 DevOps 的本地版本。

谢谢!


1
这不是来自Git的,所以它必须来自Git和Azure DevOps之间的某个东西。或者Azure DevOps被自己的消息搞糊涂了...在继续之前,最好找出是否存在某种中间人在此执行“主机提供程序”检测。您可能会得到最好的服务。 - torek
6
我也遇到了这个问题,但我没有使用 Azure DevOps。我只是升级到 Git for Windows 2.33.1.windows.1 版本。 - Albert Szilvasy
1
@torek 很抱歉回复晚了。在我的有限研究中,似乎powershell默认将输出转储到stderr io流中。DevOps将其视为错误,这是正确的。它似乎也很可能来自GIT。如果我通过命令行运行fetch命令,我会看到它。不幸的是,在安静地运行命令时,似乎无法隐藏此新输出。现在我正在与DevOps作斗争,试图将输出重定向到一个文件而不是stderr,使用2>git_output.file或2>&1。当我在本地运行我的powershell时,两者都有效。可能是某种权限相关的问题。 - B.Clark
@AlbertSzilvasy 这是我正在运行的相同版本。很高兴听到这不仅是我的问题哈哈。 - B.Clark
2
该字符串在 Git 源代码中没有出现,但它可能存在于 Git 使用的某个库中(例如 libcurl)。啊哈,它似乎在(由 Microsoft 提供的)Git 凭据管理器核心组件中。请参见此处此处 - torek
1个回答

18

这确实来自于Git使用的GCM。
您可以降级到Git 2.32,或者等待最近发布的Git-Credential-Manager-Core v2.0.603,该版本已删除了那些消息。

该版本尚未与最新的Git for Windows捆绑,例如最近的2.34.0,但是预计会在2.34.1中包含。

使用set GCM_PROVIDER=generic也可能有所帮助。


更新时间为2021年11月25日:Git for Windows 2.34.1已发布,其中包括Git Credential Manager Core v2.0.605.12951

GCM 2.0.605包括“Remove noisy messages during auto-detection” (#492, #494)。


@Étienne 太好了!我已经编辑了答案,包括对新的Git和GCM版本的引用。 - VonC
我在2.34.1版本中仍然看到这个问题。 - JabberwockyDecompiler
我可以确认 https://github.com/git-for-windows/git/releases/tag/v2.33.0.windows.2 正常工作。我没有测试其他版本。 - JabberwockyDecompiler
3
我刚刚升级到2.34.1,但我仍然看到这个消息。 - Gagan T K
@GaganTK 奇怪。我有 git version 2.34.1.windows.1,但我再也看不到它了。 - VonC
显示剩余4条评论

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接