从TeamCity构建步骤运行git命令

3
我想从远程仓库拉取最新的更改,以下是步骤:
git fetch origin +refs/changes/*:refs/remotes/origin/changes/*

在C:\Program Files (x86)\Git\cmd\Git中调用git将其配置为命令行。然而,当TeamCity运行该命令时,它只是等待,等待和等待...

Starting: C:\Windows\system32\cmd.exe /s /c ""c:\Program Files (x86)\Git\cmd\git" fetch origin"
[11:54:31]in directory: C:\BuildAgent\work\99b8cd174ffcc354
[11:55:04]Process exited with code 1

在11:55时的退出码为1,是因为运行fetch命令花费时间超过了一分钟,所以我停止了构建。我已经等待了更长时间。
非常感谢您的帮助。

1
调试此类问题时,您应登录到代理机器,并在启动代理进程的用户下执行完全相同的命令。很可能它也会挂起。 - Pavel Sher
2个回答

2

Pavel评论道:

要调试此类问题,您应该登录代理机器并在启动代理进程的用户下执行完全相同的命令。很可能它也会挂起。

我们在构建步骤中使用了git push,并且它在构建服务器上挂起。您可能会发现,您需要告诉git origin远程是可信的,并且它应始终可信。当您首次尝试连接到不受信任的远程主机时,它会在控制台中弹出。

一旦您在一个构建代理上完成了这个操作,您就可以在所有构建代理之间复制构建代理的git文件夹中的known_hosts文件。


0

在您的构建代理中运行完全相同的命令。 问题可能是known_hosts文件中缺少远程主机。


不知道为什么这个被踩了,和我上面描述的问题一样。 - Bronumski

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