webentwicklung-frage-antwort-db.com.de

Git-Klon-Fehler: RPC fehlgeschlagen; Ergebnis = 56, HTTP-Code = 200

Ich versuche, ein (privates) Remote-Repository zu klonen, erhalte jedoch folgende Fehlermeldung:

 remote: Counting objects: 11410, done
 remote: Finding sources: 100% (11410/11410)
 remote: Getting sizes: 100% (9178/9178)
 error: RPC failed; result=56, HTTP code = 200
 error: inflate: data stream error (invalid block type)
 fatal: pack has bad object at offset 427781: inflate returned -3

Ich verwende Git Version 1.9.4 unter Windows 8 Pro Build 9200. Es gibt große Dateien in diesem Repository, aber die Dateigröße scheint für mein Problem irrelevant zu sein, da ich immer noch den gleichen Fehler erhalte, wenn ich versuche, ein anderes kleineres Repository (<20 MB) zu klonen mit AppHarbor). Irgendwelche Ideen ?

10
Oleh

Mein Sysadmin hat herausgefunden, dass das Problem bei Avast liegt. Wenn dasselbe Problem auftritt und Sie Avast verwenden, deaktivieren Sie es. Das hat mein Problem behoben.

8
Oleh

Die Git-Binärdateien, die ich in Ubuntu und Debian gefunden habe, haben beide diesen Fehler. Es wurde durch einen Fehler in GnuTLS verursacht, gegen den der Git kompiliert wurde (verfolgt hier ). Es ist einfach nicht möglich, ein Git-Repo in Ubuntu oder Debian mit einer HTTPS-URL zu klonen.

Sie haben zwei Möglichkeiten:

  1. Klonen Sie das Repo mit SSH
  2. Git gegen libcurl4-openssl-dev neu kompilieren (libcurl4-gnutls-dev hat bei mir nicht funktioniert)

Für den Fall, dass Sie sich für Option 2 entscheiden, finden Sie hier ein Kopieren/Einfügen, um den neuesten Git auf Debian oder Ubuntu neu zu kompilieren. Die neueste Version von Git finden Sie hier .

apt-get update \
&& apt-get install -y build-essential libcurl4-openssl-dev libexpat1-dev gettext libz-dev libssl-dev autoconf \
&& wget https://github.com/git/git/archive/v2.8.1.tar.gz -O git.tar.gz \
&& tar -zxf git.tar.gz \
&& cd git-* \
&& make configure \
&& ./configure --prefix=/usr  \
&& make install
4
gogstad

Ich habe es gelöst, indem ich SSH verwendet habe, um den Klon durchzuführen. Lösung gefunden hier .

Um SSH mit Bitbucket zu verwenden, erstellen Sie eine SSH-Identität. Eine Identität besteht aus einem privaten und einem öffentlichen Schlüssel, die zusammen ein Schlüsselpaar bilden. Der private Schlüssel befindet sich auf Ihrem lokalen Computer und dem öffentlichen Schlüssel, den Sie auf Ihr Bitbucket-Konto hochladen. Sobald Sie einen öffentlichen Schlüssel in Ihr Konto hochgeladen haben, können Sie mithilfe von SSH eine Verbindung zu Repositorys herstellen, deren Eigentümer Sie sind, und zu Repositorys, deren Eigentümer andere sind, sofern diese anderen Eigentümer Ihrem Konto Berechtigungen erteilen. Wenn Sie SSH zwischen Ihrem lokalen System und dem Bitbucket-Server einrichten, verwendet Ihr System das Schlüsselpaar, um die Authentifizierung zu automatisieren. Sie müssen Ihr Passwort nicht jedes Mal eingeben, wenn Sie mit Ihrem Bitbucket-Repository interagieren.

Hier erfahren Sie, wie Sie SSH für Git einrichten .

0