1

从 TeamCity 6.5对我的 git 存储库(位于AppHarbor上)进行测试连接时出现此错误。任何人都可以更仔细地解释这个错误吗?

001E# service=git-upload-pack 的无效广告

4

3 回答 3

2

这很可能是由基于 TeamCity JGit 的客户端和 AppHabor 的基于 WebGitNet 的 Git 实现之间的不良交互引起的。这里提到了同样的症状。我将尝试看看我们是否可以向后移植该补丁。

编辑:正如 rarouš 提到的,使用Github 集成(或 Bitbucket 的 git 存储库)也是一个非常好的选择。

于 2011-10-16T04:29:09.407 回答
1

我检查了与 Wireshark 的网络交互,发现 TeamCity 使用的 JGit 将此数据包视为不正确:

HTTP/1.1 200 OK
Cache-Control: private
Content-Type: application/x-git-upload-pack-advertisement; charset=utf-8
Server: Microsoft-IIS/7.5
X-AspNet-Version: 4.0.30319
X-Powered-By: ASP.NET
Date: Thu, 05 Jan 2012 09:56:30 GMT
Content-Length: 255

001d# service=git-upload-pack ... <other stuff>

确切地说,它被charset=utf-8部分混淆了(在执行调用时添加response.Write(string))。不过,msysgit 可以正确处理此类数据包。

通过替换Write(string)为二进制写入来解决问题。其他选项是response.Charset = null;明确指定。

我在GitWebAccess上测试了有类似问题的信息,并在此处提出了修复请求。

于 2012-01-05T10:21:55.883 回答
1

尝试使用 EGit 从 Eclipse 签出项目时遇到同样的错误。就我而言,我只是给出了错误的项目路径。如果您因为遇到此错误而来到这里 -> 首先检查您的存储库路径

于 2012-10-18T14:00:17.190 回答