我是Jenkins的新手,我试图让它在我的.NET项目中运行一些单元测试 .
当我运行构建时,它会在尝试从git存储库中获取时挂起 .
错误:10分钟后超时
C:\ Program Files \ Git \ cmd \ git.exe config --local --remove-section credential #timetime = 10错误:获取远程repo'initin'时出错hudson.plugins.git.GitException:无法从https获取://github.com/name.of.repo
我已经生成了已知的主机并将.ssh目录复制到C:\ Windows \ SysWOW64 \ config \ systemprofile.ssh,按照https://wiki.jenkins-ci.org/display/JENKINS/Git+Plugin "Jenkins, GIT plugin and Windows"下的jenkins说明进行操作
我从cmd行运行ssh git@github.com,我可以成功验证 .
有什么想法吗?
谢谢 :)
3 回答
我和OP有同样的问题 . SSH凭据存储在Jenkins中,适用于访问同一个repo的许多其他节点 . 我可以作为Jenkins用户ssh进入机器,并使用与Jenkins作业(
git@git.com:account/repo.git
)相同的SSH repo URL在repo上执行git clone
.作为一种解决方法,我现在将Jenkins作业中的git凭据设置为
none
. 我假设它允许它使用本地存储的凭据 .它现在正在运作 .
这可能是防火墙问题 . 您可以使用SSH(端口22)向Github进行身份验证,以便该路由正常运行 . 但是你的工作是试图通过https://github.com(端口443)访问github超时 . 尝试通过将存储库URL更改为_365146来访问ssh上的github(您可以在repo的主页上找到此URL,下拉'Choose a clone URL',选项'SSH' .
在尝试使用SSH访问远程Git存储库而不是用户名和密码之前,必须注意克隆和获取的超时设置 .
When you have a bad internet connection and a large size of remote repository will cause you clone timeout.
转到项目设置:
Source Code Management
- >Additional Behaviours
- >Advanced clone behaviours
- >Timeout (In Minutes) for clone and fetch operations
- >超过10分钟 .然后,如果你仍然有同样的问题,git克隆很长一段时间,无论是一个糟糕的互联网连接还是大尺寸的远程存储库,你可以尝试使用SSH来访问你的远程Git存储库而不是用户名&密码 .