1

TeamCity 6.5 から( AppHarborにある)私の git リポジトリに対してテスト接続を行うと、このエラーが発生します。このエラーをもっと詳しく説明できる人はいますか?

001E# service=git-upload-pack の無効な広告

4

3 に答える 3

2

これは、TeamCityJGitベースのクライアントとAppHaborのWebGitNetベースのGit実装の間の不適切な相互作用が原因である可能性があります。同じ症状がここに記載されています。そのパッチをバックポートできるかどうか試してみます。

編集: raroušが述べているように、Github統合(またはBitbucketのgitリポジトリ)を使用することも本当に良いオプションです。

于 2011-10-16T04:29:09.407 に答える
1

EGit を使用して Eclipse からプロジェクトをチェックアウトしようとすると、同じエラーが発生しました。私の場合、単に間違ったプロジェクト パスを指定しただけです。このエラーが発生したためにここに来た場合 -> まずリポジトリのパスを確認してください

于 2012-10-18T14:00:17.190 に答える
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 に答える