Team City Git“主机密钥验证失败”

Bad*_*pot 5 git teamcity git-push git-bash

我想使用 TeamCity 从远程 Git 存储库中提取代码,更新文件(并暂存并提交到本地存储库),然后将提交的文件推送回远程存储库。

拉取和更新很好。如果我打开 git-bash,git push origin master然后提交(由提交到本地存储库的更新文件引起)被推送到远程存储库。美好的。

如果我尝试使用 Team City 的命令行运行程序执行此操作(针对同一个远程目标存储库),则会失败

    [14:49:18][Step 3/7] Host key verification failed.
    [14:49:18][Step 3/7] fatal: Could not read from remote repository.
Run Code Online (Sandbox Code Playgroud)

目标存储库使用 Gerrit 进行身份验证。我已将公钥上传到 Gerrit 并确认来自 Gerrit 的服务器主机密钥在C:\Users\AccountName\.ssh\known_hosts. 该文件夹还包含公钥和私钥。

我可以使用 git-bash 推送的事实告诉我,这些键在正确的位置,但我很困惑为什么 Team City Command Line runner 没有使用它们。

对于 ref,构建步骤的命令参数是-c "git push origin master".

谁能看到我错过了什么?

谢谢

Ben*_*rds 3

您必须将 TeamCity 服务设置为以有权访问您的密钥的同一帐户运行。默认情况下,TeamCity 使用“系统”帐户,因此您的密钥未被使用。