主机密钥验证与Mavericks Server的Xcode失败

时间:2013-11-15 12:31:26

标签: xcode git continuous-integration git-submodules osx-mavericks

我正在尝试进行CI设置,并在一台机器上下载Mavericks服务器并与Xcode链接。

这是设置:

  1. 两个git repos,托管在OS X服务器上,名为CICISubmodule
  2. CISubmodule已添加为CI
  3. 的子模块

    每次添加bot时,我都会在集成时遇到Host key verification failed错误。从日志中可以清楚地看出,由于身份验证错误(我尝试过SSH,HTTP,HTTPS)服务器无法克隆CISubmodule,但我不知道为什么验证失败。

    我已经设置了服务器,以便登录的用户可以读写。

    我已经尝试了所有事情mentioned here

    我猜这是因为服务器正在以teamsserver运行,并且repo可能在我的用户名下,但我无法弄清楚如何赋予它克隆权限。可能是SSH密钥需要密码吗?如果是这样,我该如何设置它以便它不再需要密码?

    非常感谢任何指导。

    谢谢,

    西蒙

3 个答案:

答案 0 :(得分:0)

我有相同的情况,我不确定究竟发生了什么,我认为原因是我有更多的远程存储库访问和指向git-server端指向同一存储库的ssh键。

删除远程存储库访问并清理authorized_keys文件有帮助。

我可以确认CI服务器使用子模块,但确保.gitmodules文件和xccheckout文件指向相同的存储库

答案 1 :(得分:0)

您可能需要使用passphrase-LESS密钥才能将os x服务器正确连接到第三方托管的git repos。它无法连接,需要密码。

ssh-keygen -p

它对我们有用

答案 2 :(得分:0)

帮助我的一件事是将我的子模块URL更改为使用HTTPS而不是SSH。

执行此操作时,请确保Xcode实际上正在使用新URL。即使我做了更改并推送它们,Xcode也在缓存SSH URL并使用它们。从服务器中删除所有SSH URL,然后在Preferences->Accounts下从客户端删除它们。然后重新启动服务器并重新启动Xcode,确认在创建机器人时正在使用新的HTTPS URL。